]> granicus.if.org Git - php/commitdiff
Fixed bug #55399 (parse_url() incorrectly treats ':' as a valid path)
authorIlia Alshanetsky <iliaa@php.net>
Thu, 11 Aug 2011 13:01:52 +0000 (13:01 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Thu, 11 Aug 2011 13:01:52 +0000 (13:01 +0000)
ext/standard/tests/url/bug55399.phpt [new file with mode: 0644]
ext/standard/url.c

diff --git a/ext/standard/tests/url/bug55399.phpt b/ext/standard/tests/url/bug55399.phpt
new file mode 100644 (file)
index 0000000..619c08d
--- /dev/null
@@ -0,0 +1,10 @@
+--TEST--
+Bug #55399 (parse_url() incorrectly treats ':' as a valid path)
+--FILE--
+<?php
+
+var_dump(parse_url(":"));
+
+?>
+--EXPECT--
+bool(false)
index 0f4b836e628f297b87445404b111ba7782f47e98..da6d4e89d0adb02414420bb66cde54abb0ff3451 100644 (file)
@@ -197,6 +197,10 @@ PHPAPI php_url *php_url_parse_ex(char const *str, int length)
                                efree(ret);
                                return NULL;
                        }
+               } else if (p == pp && *pp == '\0') {
+                       STR_FREE(ret->scheme);
+                       efree(ret);
+                       return NULL;
                } else {
                        goto just_path;
                }