From: Pierre Joye <pajoye@php.net>
Date: Wed, 16 Jun 2010 18:56:24 +0000 (+0000)
Subject: - #50563, removing E_WARNING from parse_url()
X-Git-Tag: php-5.3.3RC1~13
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=cfd930d218ed29e80cf164eadce5ed86db80cfca;p=php

- #50563, removing E_WARNING from parse_url()
---

diff --git a/NEWS b/NEWS
index 79348ce277..e848150da5 100644
--- a/NEWS
+++ b/NEWS
@@ -194,6 +194,10 @@ PHP                                                                        NEWS
   if defined in WSDL). (mephius at gmail dot com)
 - Fixed bug #50731 (Inconsistent namespaces sent to functions registered with
   spl_autoload_register). (Felipe)
+- Fixed bug #50563 (removing E_WARNING from parse_url). (ralph at smashlabs dot 
+  com, Pierre)
+- Fixed bug #50578 (incorrect shebang in phar.phar). (Fedora at FamilleCollet
+  dot com)
 - Fixed bug #50555 (DateTime::sub() allows 'relative' time modifications). (Derick)
 - Fixed bug #50392 (date_create_from_format enforces 6 digits for 'u' format
   character). (Derick)
@@ -202,6 +206,8 @@ PHP                                                                        NEWS
 - Fixed bug #50358 (Compile failure compiling ext/phar/util.lo). (Felipe)
 - Fixed bug #50101 (name clash between global and local variable).
   (patch by yoarvi at gmail dot com)
+- Fixed bug #51002 (fix possible memory corruption with very long names).
+  (Pierre)
 - Fixed bug #49893 (Crash while creating an instance of Zend_Mail_Storage_Pop3).
   (Dmitry)
 - Fixed bug #49819 (STDOUT losing data with posix_isatty()). (Mike)
diff --git a/ext/standard/tests/url/parse_url_basic_001.phpt b/ext/standard/tests/url/parse_url_basic_001.phpt
index 3d50689a4d..7b9d51399a 100644
--- a/ext/standard/tests/url/parse_url_basic_001.phpt
+++ b/ext/standard/tests/url/parse_url_basic_001.phpt
@@ -845,55 +845,29 @@ echo "Done";
   string(1) "/"
 }
 
---> http:///blah.com: 
-Warning: parse_url(http:///blah.com): Unable to parse URL in %s on line 15
-bool(false)
+--> http:///blah.com: bool(false)
 
---> http://:80: 
-Warning: parse_url(http://:80): Unable to parse URL in %s on line 15
-bool(false)
+--> http://:80: bool(false)
 
---> http://user@:80: 
-Warning: parse_url(http://user@:80): Unable to parse URL in %s on line 15
-bool(false)
+--> http://user@:80: bool(false)
 
---> http://user:pass@:80: 
-Warning: parse_url(http://user:pass@:80): Unable to parse URL in %s on line 15
-bool(false)
+--> http://user:pass@:80: bool(false)
 
---> http://:: 
-Warning: parse_url(http://:): Unable to parse URL in %s on line 15
-bool(false)
+--> http://:: bool(false)
 
---> http://@/: 
-Warning: parse_url(http://@/): Unable to parse URL in %s on line 15
-bool(false)
+--> http://@/: bool(false)
 
---> http://@:/: 
-Warning: parse_url(http://@:/): Unable to parse URL in %s on line 15
-bool(false)
+--> http://@:/: bool(false)
 
---> http://:/: 
-Warning: parse_url(http://:/): Unable to parse URL in %s on line 15
-bool(false)
+--> http://:/: bool(false)
 
---> http://?: 
-Warning: parse_url(http://?): Unable to parse URL in %s on line 15
-bool(false)
+--> http://?: bool(false)
 
---> http://?:: 
-Warning: parse_url(http://?:): Unable to parse URL in %s on line 15
-bool(false)
+--> http://?:: bool(false)
 
---> http://:?: 
-Warning: parse_url(http://:?): Unable to parse URL in %s on line 15
-bool(false)
+--> http://:?: bool(false)
 
---> http://blah.com:123456: 
-Warning: parse_url(http://blah.com:123456): Unable to parse URL in %s on line 15
-bool(false)
+--> http://blah.com:123456: bool(false)
 
---> http://blah.com:abcdef: 
-Warning: parse_url(http://blah.com:abcdef): Unable to parse URL in %s on line 15
-bool(false)
+--> http://blah.com:abcdef: bool(false)
 Done
\ No newline at end of file
diff --git a/ext/standard/tests/url/parse_url_basic_002.phpt b/ext/standard/tests/url/parse_url_basic_002.phpt
index e25ab8dcd1..f3ac770f0a 100644
--- a/ext/standard/tests/url/parse_url_basic_002.phpt
+++ b/ext/standard/tests/url/parse_url_basic_002.phpt
@@ -109,43 +109,17 @@ echo "Done";
 --> http://[x:80]/   : string(4) "http"
 -->    : NULL
 --> /   : NULL
---> http:///blah.com   : 
-Warning: parse_url(http:///blah.com): Unable to parse URL in %s on line 15
-bool(false)
---> http://:80   : 
-Warning: parse_url(http://:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user@:80   : 
-Warning: parse_url(http://user@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user:pass@:80   : 
-Warning: parse_url(http://user:pass@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://:   : 
-Warning: parse_url(http://:): Unable to parse URL in %s on line 15
-bool(false)
---> http://@/   : 
-Warning: parse_url(http://@/): Unable to parse URL in %s on line 15
-bool(false)
---> http://@:/   : 
-Warning: parse_url(http://@:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://:/   : 
-Warning: parse_url(http://:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://?   : 
-Warning: parse_url(http://?): Unable to parse URL in %s on line 15
-bool(false)
---> http://?:   : 
-Warning: parse_url(http://?:): Unable to parse URL in %s on line 15
-bool(false)
---> http://:?   : 
-Warning: parse_url(http://:?): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:123456   : 
-Warning: parse_url(http://blah.com:123456): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:abcdef   : 
-Warning: parse_url(http://blah.com:abcdef): Unable to parse URL in %s on line 15
-bool(false)
+--> http:///blah.com   : bool(false)
+--> http://:80   : bool(false)
+--> http://user@:80   : bool(false)
+--> http://user:pass@:80   : bool(false)
+--> http://:   : bool(false)
+--> http://@/   : bool(false)
+--> http://@:/   : bool(false)
+--> http://:/   : bool(false)
+--> http://?   : bool(false)
+--> http://?:   : bool(false)
+--> http://:?   : bool(false)
+--> http://blah.com:123456   : bool(false)
+--> http://blah.com:abcdef   : bool(false)
 Done
\ No newline at end of file
diff --git a/ext/standard/tests/url/parse_url_basic_003.phpt b/ext/standard/tests/url/parse_url_basic_003.phpt
index e34dc2d194..dbd92088ae 100644
--- a/ext/standard/tests/url/parse_url_basic_003.phpt
+++ b/ext/standard/tests/url/parse_url_basic_003.phpt
@@ -108,43 +108,17 @@ echo "Done";
 --> http://[x:80]/   : string(6) "[x:80]"
 -->    : NULL
 --> /   : NULL
---> http:///blah.com   : 
-Warning: parse_url(http:///blah.com): Unable to parse URL in %s on line 15
-bool(false)
---> http://:80   : 
-Warning: parse_url(http://:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user@:80   : 
-Warning: parse_url(http://user@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user:pass@:80   : 
-Warning: parse_url(http://user:pass@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://:   : 
-Warning: parse_url(http://:): Unable to parse URL in %s on line 15
-bool(false)
---> http://@/   : 
-Warning: parse_url(http://@/): Unable to parse URL in %s on line 15
-bool(false)
---> http://@:/   : 
-Warning: parse_url(http://@:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://:/   : 
-Warning: parse_url(http://:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://?   : 
-Warning: parse_url(http://?): Unable to parse URL in %s on line 15
-bool(false)
---> http://?:   : 
-Warning: parse_url(http://?:): Unable to parse URL in %s on line 15
-bool(false)
---> http://:?   : 
-Warning: parse_url(http://:?): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:123456   : 
-Warning: parse_url(http://blah.com:123456): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:abcdef   : 
-Warning: parse_url(http://blah.com:abcdef): Unable to parse URL in %s on line 15
-bool(false)
+--> http:///blah.com   : bool(false)
+--> http://:80   : bool(false)
+--> http://user@:80   : bool(false)
+--> http://user:pass@:80   : bool(false)
+--> http://:   : bool(false)
+--> http://@/   : bool(false)
+--> http://@:/   : bool(false)
+--> http://:/   : bool(false)
+--> http://?   : bool(false)
+--> http://?:   : bool(false)
+--> http://:?   : bool(false)
+--> http://blah.com:123456   : bool(false)
+--> http://blah.com:abcdef   : bool(false)
 Done
\ No newline at end of file
diff --git a/ext/standard/tests/url/parse_url_basic_004.phpt b/ext/standard/tests/url/parse_url_basic_004.phpt
index af32795470..387907f0ee 100644
--- a/ext/standard/tests/url/parse_url_basic_004.phpt
+++ b/ext/standard/tests/url/parse_url_basic_004.phpt
@@ -108,43 +108,17 @@ echo "Done";
 --> http://[x:80]/   : NULL
 -->    : NULL
 --> /   : NULL
---> http:///blah.com   : 
-Warning: parse_url(http:///blah.com): Unable to parse URL in %s on line 15
-bool(false)
---> http://:80   : 
-Warning: parse_url(http://:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user@:80   : 
-Warning: parse_url(http://user@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user:pass@:80   : 
-Warning: parse_url(http://user:pass@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://:   : 
-Warning: parse_url(http://:): Unable to parse URL in %s on line 15
-bool(false)
---> http://@/   : 
-Warning: parse_url(http://@/): Unable to parse URL in %s on line 15
-bool(false)
---> http://@:/   : 
-Warning: parse_url(http://@:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://:/   : 
-Warning: parse_url(http://:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://?   : 
-Warning: parse_url(http://?): Unable to parse URL in %s on line 15
-bool(false)
---> http://?:   : 
-Warning: parse_url(http://?:): Unable to parse URL in %s on line 15
-bool(false)
---> http://:?   : 
-Warning: parse_url(http://:?): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:123456   : 
-Warning: parse_url(http://blah.com:123456): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:abcdef   : 
-Warning: parse_url(http://blah.com:abcdef): Unable to parse URL in %s on line 15
-bool(false)
+--> http:///blah.com   : bool(false)
+--> http://:80   : bool(false)
+--> http://user@:80   : bool(false)
+--> http://user:pass@:80   : bool(false)
+--> http://:   : bool(false)
+--> http://@/   : bool(false)
+--> http://@:/   : bool(false)
+--> http://:/   : bool(false)
+--> http://?   : bool(false)
+--> http://?:   : bool(false)
+--> http://:?   : bool(false)
+--> http://blah.com:123456   : bool(false)
+--> http://blah.com:abcdef   : bool(false)
 Done
\ No newline at end of file
diff --git a/ext/standard/tests/url/parse_url_basic_005.phpt b/ext/standard/tests/url/parse_url_basic_005.phpt
index 5eb2541c11..d44dcfef39 100644
--- a/ext/standard/tests/url/parse_url_basic_005.phpt
+++ b/ext/standard/tests/url/parse_url_basic_005.phpt
@@ -108,43 +108,17 @@ echo "Done";
 --> http://[x:80]/   : NULL
 -->    : NULL
 --> /   : NULL
---> http:///blah.com   : 
-Warning: parse_url(http:///blah.com): Unable to parse URL in %s on line 15
-bool(false)
---> http://:80   : 
-Warning: parse_url(http://:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user@:80   : 
-Warning: parse_url(http://user@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user:pass@:80   : 
-Warning: parse_url(http://user:pass@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://:   : 
-Warning: parse_url(http://:): Unable to parse URL in %s on line 15
-bool(false)
---> http://@/   : 
-Warning: parse_url(http://@/): Unable to parse URL in %s on line 15
-bool(false)
---> http://@:/   : 
-Warning: parse_url(http://@:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://:/   : 
-Warning: parse_url(http://:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://?   : 
-Warning: parse_url(http://?): Unable to parse URL in %s on line 15
-bool(false)
---> http://?:   : 
-Warning: parse_url(http://?:): Unable to parse URL in %s on line 15
-bool(false)
---> http://:?   : 
-Warning: parse_url(http://:?): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:123456   : 
-Warning: parse_url(http://blah.com:123456): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:abcdef   : 
-Warning: parse_url(http://blah.com:abcdef): Unable to parse URL in %s on line 15
-bool(false)
+--> http:///blah.com   : bool(false)
+--> http://:80   : bool(false)
+--> http://user@:80   : bool(false)
+--> http://user:pass@:80   : bool(false)
+--> http://:   : bool(false)
+--> http://@/   : bool(false)
+--> http://@:/   : bool(false)
+--> http://:/   : bool(false)
+--> http://?   : bool(false)
+--> http://?:   : bool(false)
+--> http://:?   : bool(false)
+--> http://blah.com:123456   : bool(false)
+--> http://blah.com:abcdef   : bool(false)
 Done
\ No newline at end of file
diff --git a/ext/standard/tests/url/parse_url_basic_006.phpt b/ext/standard/tests/url/parse_url_basic_006.phpt
index 926200a1a0..bd6d03efde 100644
--- a/ext/standard/tests/url/parse_url_basic_006.phpt
+++ b/ext/standard/tests/url/parse_url_basic_006.phpt
@@ -108,43 +108,17 @@ echo "Done";
 --> http://[x:80]/   : NULL
 -->    : NULL
 --> /   : NULL
---> http:///blah.com   : 
-Warning: parse_url(http:///blah.com): Unable to parse URL in %s on line 15
-bool(false)
---> http://:80   : 
-Warning: parse_url(http://:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user@:80   : 
-Warning: parse_url(http://user@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user:pass@:80   : 
-Warning: parse_url(http://user:pass@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://:   : 
-Warning: parse_url(http://:): Unable to parse URL in %s on line 15
-bool(false)
---> http://@/   : 
-Warning: parse_url(http://@/): Unable to parse URL in %s on line 15
-bool(false)
---> http://@:/   : 
-Warning: parse_url(http://@:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://:/   : 
-Warning: parse_url(http://:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://?   : 
-Warning: parse_url(http://?): Unable to parse URL in %s on line 15
-bool(false)
---> http://?:   : 
-Warning: parse_url(http://?:): Unable to parse URL in %s on line 15
-bool(false)
---> http://:?   : 
-Warning: parse_url(http://:?): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:123456   : 
-Warning: parse_url(http://blah.com:123456): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:abcdef   : 
-Warning: parse_url(http://blah.com:abcdef): Unable to parse URL in %s on line 15
-bool(false)
+--> http:///blah.com   : bool(false)
+--> http://:80   : bool(false)
+--> http://user@:80   : bool(false)
+--> http://user:pass@:80   : bool(false)
+--> http://:   : bool(false)
+--> http://@/   : bool(false)
+--> http://@:/   : bool(false)
+--> http://:/   : bool(false)
+--> http://?   : bool(false)
+--> http://?:   : bool(false)
+--> http://:?   : bool(false)
+--> http://blah.com:123456   : bool(false)
+--> http://blah.com:abcdef   : bool(false)
 Done
\ No newline at end of file
diff --git a/ext/standard/tests/url/parse_url_basic_007.phpt b/ext/standard/tests/url/parse_url_basic_007.phpt
index d99ccb6674..aa9f88ba54 100644
--- a/ext/standard/tests/url/parse_url_basic_007.phpt
+++ b/ext/standard/tests/url/parse_url_basic_007.phpt
@@ -108,43 +108,17 @@ echo "Done";
 --> http://[x:80]/   : string(1) "/"
 -->    : string(0) ""
 --> /   : string(1) "/"
---> http:///blah.com   : 
-Warning: parse_url(http:///blah.com): Unable to parse URL in %s on line 15
-bool(false)
---> http://:80   : 
-Warning: parse_url(http://:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user@:80   : 
-Warning: parse_url(http://user@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user:pass@:80   : 
-Warning: parse_url(http://user:pass@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://:   : 
-Warning: parse_url(http://:): Unable to parse URL in %s on line 15
-bool(false)
---> http://@/   : 
-Warning: parse_url(http://@/): Unable to parse URL in %s on line 15
-bool(false)
---> http://@:/   : 
-Warning: parse_url(http://@:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://:/   : 
-Warning: parse_url(http://:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://?   : 
-Warning: parse_url(http://?): Unable to parse URL in %s on line 15
-bool(false)
---> http://?:   : 
-Warning: parse_url(http://?:): Unable to parse URL in %s on line 15
-bool(false)
---> http://:?   : 
-Warning: parse_url(http://:?): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:123456   : 
-Warning: parse_url(http://blah.com:123456): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:abcdef   : 
-Warning: parse_url(http://blah.com:abcdef): Unable to parse URL in %s on line 15
-bool(false)
+--> http:///blah.com   : bool(false)
+--> http://:80   : bool(false)
+--> http://user@:80   : bool(false)
+--> http://user:pass@:80   : bool(false)
+--> http://:   : bool(false)
+--> http://@/   : bool(false)
+--> http://@:/   : bool(false)
+--> http://:/   : bool(false)
+--> http://?   : bool(false)
+--> http://?:   : bool(false)
+--> http://:?   : bool(false)
+--> http://blah.com:123456   : bool(false)
+--> http://blah.com:abcdef   : bool(false)
 Done
\ No newline at end of file
diff --git a/ext/standard/tests/url/parse_url_basic_008.phpt b/ext/standard/tests/url/parse_url_basic_008.phpt
index d2d2ebb594..7b166127f8 100644
--- a/ext/standard/tests/url/parse_url_basic_008.phpt
+++ b/ext/standard/tests/url/parse_url_basic_008.phpt
@@ -108,43 +108,17 @@ echo "Done";
 --> http://[x:80]/   : NULL
 -->    : NULL
 --> /   : NULL
---> http:///blah.com   : 
-Warning: parse_url(http:///blah.com): Unable to parse URL in %s on line 15
-bool(false)
---> http://:80   : 
-Warning: parse_url(http://:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user@:80   : 
-Warning: parse_url(http://user@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user:pass@:80   : 
-Warning: parse_url(http://user:pass@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://:   : 
-Warning: parse_url(http://:): Unable to parse URL in %s on line 15
-bool(false)
---> http://@/   : 
-Warning: parse_url(http://@/): Unable to parse URL in %s on line 15
-bool(false)
---> http://@:/   : 
-Warning: parse_url(http://@:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://:/   : 
-Warning: parse_url(http://:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://?   : 
-Warning: parse_url(http://?): Unable to parse URL in %s on line 15
-bool(false)
---> http://?:   : 
-Warning: parse_url(http://?:): Unable to parse URL in %s on line 15
-bool(false)
---> http://:?   : 
-Warning: parse_url(http://:?): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:123456   : 
-Warning: parse_url(http://blah.com:123456): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:abcdef   : 
-Warning: parse_url(http://blah.com:abcdef): Unable to parse URL in %s on line 15
-bool(false)
+--> http:///blah.com   : bool(false)
+--> http://:80   : bool(false)
+--> http://user@:80   : bool(false)
+--> http://user:pass@:80   : bool(false)
+--> http://:   : bool(false)
+--> http://@/   : bool(false)
+--> http://@:/   : bool(false)
+--> http://:/   : bool(false)
+--> http://?   : bool(false)
+--> http://?:   : bool(false)
+--> http://:?   : bool(false)
+--> http://blah.com:123456   : bool(false)
+--> http://blah.com:abcdef   : bool(false)
 Done
\ No newline at end of file
diff --git a/ext/standard/tests/url/parse_url_basic_009.phpt b/ext/standard/tests/url/parse_url_basic_009.phpt
index b23a30edfc..a814546c52 100644
--- a/ext/standard/tests/url/parse_url_basic_009.phpt
+++ b/ext/standard/tests/url/parse_url_basic_009.phpt
@@ -108,43 +108,17 @@ echo "Done";
 --> http://[x:80]/   : NULL
 -->    : NULL
 --> /   : NULL
---> http:///blah.com   : 
-Warning: parse_url(http:///blah.com): Unable to parse URL in %s on line 15
-bool(false)
---> http://:80   : 
-Warning: parse_url(http://:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user@:80   : 
-Warning: parse_url(http://user@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://user:pass@:80   : 
-Warning: parse_url(http://user:pass@:80): Unable to parse URL in %s on line 15
-bool(false)
---> http://:   : 
-Warning: parse_url(http://:): Unable to parse URL in %s on line 15
-bool(false)
---> http://@/   : 
-Warning: parse_url(http://@/): Unable to parse URL in %s on line 15
-bool(false)
---> http://@:/   : 
-Warning: parse_url(http://@:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://:/   : 
-Warning: parse_url(http://:/): Unable to parse URL in %s on line 15
-bool(false)
---> http://?   : 
-Warning: parse_url(http://?): Unable to parse URL in %s on line 15
-bool(false)
---> http://?:   : 
-Warning: parse_url(http://?:): Unable to parse URL in %s on line 15
-bool(false)
---> http://:?   : 
-Warning: parse_url(http://:?): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:123456   : 
-Warning: parse_url(http://blah.com:123456): Unable to parse URL in %s on line 15
-bool(false)
---> http://blah.com:abcdef   : 
-Warning: parse_url(http://blah.com:abcdef): Unable to parse URL in %s on line 15
-bool(false)
+--> http:///blah.com   : bool(false)
+--> http://:80   : bool(false)
+--> http://user@:80   : bool(false)
+--> http://user:pass@:80   : bool(false)
+--> http://:   : bool(false)
+--> http://@/   : bool(false)
+--> http://@:/   : bool(false)
+--> http://:/   : bool(false)
+--> http://?   : bool(false)
+--> http://?:   : bool(false)
+--> http://:?   : bool(false)
+--> http://blah.com:123456   : bool(false)
+--> http://blah.com:abcdef   : bool(false)
 Done
\ No newline at end of file
diff --git a/ext/standard/url.c b/ext/standard/url.c
index f25c770dab..b6e01d5513 100644
--- a/ext/standard/url.c
+++ b/ext/standard/url.c
@@ -355,7 +355,7 @@ PHP_FUNCTION(parse_url)
 
 	resource = php_url_parse_ex(str, str_len);
 	if (resource == NULL) {
-		php_error_docref1(NULL TSRMLS_CC, str, E_WARNING, "Unable to parse URL");
+		/* @todo Find a method to determine why php_url_parse_ex() failed */
 		RETURN_FALSE;
 	}