cvs: php4 /ext/standard url.c /ext/standard/tests/strings url_t.phpt

From: Date: Mon, 30 Dec 2002 16:42:49 +0000
Subject: cvs: php4 /ext/standard url.c /ext/standard/tests/strings url_t.phpt
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-17473@lists.php.net to get a copy of this message
iliaa Mon Dec 30 11:42:49 2002 EDT Modified files: /php4/ext/standard url.c /php4/ext/standard/tests/strings url_t.phpt Log: Fixed bug #21226 (parse_url handling of urls without a path). Index: php4/ext/standard/url.c diff -u php4/ext/standard/url.c:1.60 php4/ext/standard/url.c:1.61 --- php4/ext/standard/url.c:1.60 Thu Dec 5 15:59:49 2002 +++ php4/ext/standard/url.c Mon Dec 30 11:42:49 2002 @@ -15,7 +15,7 @@ | Author: Jim Winstead <jimw@php.net> | +----------------------------------------------------------------------+ */ -/* $Id: url.c,v 1.60 2002/12/05 20:59:49 helly Exp $ */ +/* $Id: url.c,v 1.61 2002/12/30 16:42:49 iliaa Exp $ */ #include <stdlib.h> #include <string.h> @@ -157,12 +157,16 @@ goto nohost; } - if (!(e = strchr(s, '/'))) { - e = ue; - } else if (e && e == s) { - e = ue; - } - + e = ue; + + if (!(p = strchr(s, '/'))) { + if ((p = strchr(s, '?'))) { + e = p; + } + } else { + e = p; + } + /* check for login and password */ if ((p = memchr(s, '@', (e-s)))) { if ((pp = memchr(s, ':', (p-s)))) { Index: php4/ext/standard/tests/strings/url_t.phpt diff -u php4/ext/standard/tests/strings/url_t.phpt:1.4 php4/ext/standard/tests/strings/url_t.phpt:1.5 --- php4/ext/standard/tests/strings/url_t.phpt:1.4 Thu Nov 14 08:40:13 2002 +++ php4/ext/standard/tests/strings/url_t.phpt Mon Dec 30 11:42:49 2002 @@ -63,7 +63,8 @@ 'foo://foo@bar', 'mailto:me@mydomain.com', '/foo.php?a=b&c=d', -'foo.php?a=b&c=d' +'foo.php?a=b&c=d', +'http://user:passwd@www.example.com:8080?bar=1&boom=0' ); foreach ($sample_urls as $url) { @@ -600,4 +601,18 @@ string(7) "foo.php" ["query"]=> string(7) "a=b&c=d" +} +array(6) { + ["scheme"]=> + string(4) "http" + ["host"]=> + string(15) "www.example.com" + ["port"]=> + int(8080) + ["user"]=> + string(4) "user" + ["pass"]=> + string(6) "passwd" + ["query"]=> + string(12) "bar=1&boom=0" }

« previous php.cvs (#17473) next »