Merged revisions 80362 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80362 | senthil.kumaran | 2010-04-22 17:40:13 +0530 (Thu, 22 Apr 2010) | 4 lines

  Changed tests to only urlparse one, which was enough, addressed Ezio's comment
  on Invalid url check statement and versionchanged string in docs.
........
diff --git a/Lib/urllib/parse.py b/Lib/urllib/parse.py
index 4f48b25..3d541a7 100644
--- a/Lib/urllib/parse.py
+++ b/Lib/urllib/parse.py
@@ -181,10 +181,9 @@
             url = url[i+1:]
             if url[:2] == '//':
                 netloc, url = _splitnetloc(url, 2)
-                if '[' in netloc :
-                    if not ']' in netloc: raise ValueError("Invalid IPv6 URL")
-                if ']' in netloc:
-                    if not '[' in netloc: raise ValueError("Invalid IPv6 URL")
+                if (('[' in netloc and ']' not in netloc) or
+                        (']' in netloc and '[' not in netloc)):
+                    raise ValueError("Invalid IPv6 URL")
             if allow_fragments and '#' in url:
                 url, fragment = url.split('#', 1)
             if '?' in url:
@@ -199,10 +198,9 @@
             scheme, url = url[:i].lower(), url[i+1:]
     if url[:2] == '//':
         netloc, url = _splitnetloc(url, 2)
-        if '[' in netloc:
-            if not ']' in netloc: raise ValueError("Invalid IPv6 URL")
-        if ']' in netloc:
-            if not '[' in netloc: raise ValueError("Invalid IPv6 URL")
+        if (('[' in netloc and ']' not in netloc) or
+                (']' in netloc and '[' not in netloc)):
+            raise ValueError("Invalid IPv6 URL")
     if allow_fragments and scheme in uses_fragment and '#' in url:
         url, fragment = url.split('#', 1)
     if scheme in uses_query and '?' in url: