URI.java (AUTHORITY_REGEXP): Handle case where user name or port is missing.
authorTom Tromey <tromey@redhat.com>
Wed, 9 Feb 2005 02:56:03 +0000 (02:56 +0000)
committerTom Tromey <tromey@gcc.gnu.org>
Wed, 9 Feb 2005 02:56:03 +0000 (02:56 +0000)
* java/net/URI.java (AUTHORITY_REGEXP): Handle case where user
name or port is missing.
(AUTHORITY_USERINFO_GROUP, AUTHORITY_HOST_GROUP,
AUTHORITY_PORT_GROUP): Updated.

From-SVN: r94760

libjava/ChangeLog
libjava/java/net/URI.java

index 3c9d59b1f402fec9f235ab7c8951f0a5c0e300ad..9a7bc27f8be16d558f4ef1429a788940bc3d369b 100644 (file)
@@ -1,3 +1,10 @@
+2005-02-08  Tom Tromey  <tromey@redhat.com>
+
+       * java/net/URI.java (AUTHORITY_REGEXP): Handle case where user
+       name or port is missing.
+       (AUTHORITY_USERINFO_GROUP, AUTHORITY_HOST_GROUP,
+       AUTHORITY_PORT_GROUP): Updated.
+
 2005-02-08  Tom Tromey  <tromey@redhat.com>
 
        * configure: Rebuilt.
index 4de5095bbbbbac94adc8dc1633745ab5f5391bf4..23e3e7c9e4a2248ba5b0cd4a80bb7ee2ce1f16c4 100644 (file)
@@ -65,7 +65,7 @@ public final class URI implements Comparable, Serializable
     "^(([^:/?#]+):)?((//([^/?#]*))?([^?#]*)(\\?([^#]*))?)?(#(.*))?";
 
   private static final String AUTHORITY_REGEXP =
-    "^(([^?#]*)@([^?#]*):([^?#]*))?";
+    "^((([^?#]*)@)?([^?#:]*)(:([^?#]*)))?";
 
   /**
    * Valid characters (taken from rfc2396)
@@ -115,9 +115,9 @@ public final class URI implements Comparable, Serializable
    */
   private static final int FRAGMENT_GROUP = 10;
   
-  private static final int AUTHORITY_USERINFO_GROUP = 2;
-  private static final int AUTHORITY_HOST_GROUP = 3;
-  private static final int AUTHORITY_PORT_GROUP = 4;
+  private static final int AUTHORITY_USERINFO_GROUP = 3;
+  private static final int AUTHORITY_HOST_GROUP = 4;
+  private static final int AUTHORITY_PORT_GROUP = 6;
   
   private transient String scheme;
   private transient String rawSchemeSpecificPart;