Browse Source

MFB51: Fixed bug #36351 (parse_url() does not parse numeric paths properly).

migration/RELEASE_1_0_0
Ilia Alshanetsky 21 years ago
parent
commit
2fb6ce838b
  1. 7
      ext/standard/tests/strings/url_t.phpt
  2. 2
      ext/standard/url.c

7
ext/standard/tests/strings/url_t.phpt

@ -70,6 +70,7 @@ $sample_urls = array (
'http://foo.com#bar', 'http://foo.com#bar',
'scheme:', 'scheme:',
'foo+bar://baz@bang/bla', 'foo+bar://baz@bang/bla',
'gg:9130731',
); );
foreach ($sample_urls as $url) { foreach ($sample_urls as $url) {
@ -678,6 +679,12 @@ array(4) {
["path"]=> ["path"]=>
string(4) "/bla" string(4) "/bla"
} }
array(2) {
["scheme"]=>
string(2) "gg"
["path"]=>
string(7) "9130731"
}
string(4) "http" string(4) "http"
string(11) "www.php.net" string(11) "www.php.net"
int(80) int(80)

2
ext/standard/url.c

@ -138,7 +138,7 @@ PHPAPI php_url *php_url_parse_ex(char const *str, int length)
p++; p++;
} }
if ((*p) == '\0' || *p == '/') {
if ((*p == '\0' || *p == '/') && (p - e) < 7) {
goto parse_port; goto parse_port;
} }

Loading…
Cancel
Save