From: Anthony Green Date: Sun, 8 Jun 2003 22:07:48 +0000 (+0000) Subject: URLStreamHandler.java (sameFile): Fix port value comparison. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a8a8de48756b3c27e28e616b31886e84bf937f05;p=platform%2Fupstream%2Fgcc.git URLStreamHandler.java (sameFile): Fix port value comparison. 2003-06-08 Anthony Green * java/net/URLStreamHandler.java (sameFile): Fix port value comparison. * java/net/URL.java (handler): Make package private. * gnu/gcj/protocol/http/Handler.java (getDefaultPort): New method. From-SVN: r67640 --- diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 2d0597b..d0b1a4d 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,10 @@ +2003-06-08 Anthony Green + + * java/net/URLStreamHandler.java (sameFile): Fix port value + comparison. + * java/net/URL.java (handler): Make package private. + * gnu/gcj/protocol/http/Handler.java (getDefaultPort): New method. + 2003-06-07 Tom Tromey For PR libgcj/11085: diff --git a/libjava/gnu/gcj/protocol/http/Handler.java b/libjava/gnu/gcj/protocol/http/Handler.java index ccf94e7..608d07e 100644 --- a/libjava/gnu/gcj/protocol/http/Handler.java +++ b/libjava/gnu/gcj/protocol/http/Handler.java @@ -1,6 +1,6 @@ // Handler.java - URLStreamHandler for http protocol. -/* Copyright (C) 1999 Free Software Foundation +/* Copyright (C) 1999, 2003 Free Software Foundation This file is part of libgcj. @@ -16,7 +16,8 @@ import java.net.URLStreamHandler; import java.io.IOException; /** - * @author Warren Levy + * @author Warren Levy + * @author Anthony Green * @date March 26, 1999. */ @@ -32,4 +33,9 @@ public class Handler extends URLStreamHandler { return new Connection(url); } + + protected int getDefaultPort () + { + return 80; + } } diff --git a/libjava/java/net/URL.java b/libjava/java/net/URL.java index fd7428e..5e32e2e 100644 --- a/libjava/java/net/URL.java +++ b/libjava/java/net/URL.java @@ -1,5 +1,5 @@ /* URL.java -- Uniform Resource Locator Class - Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000, 2002, 2003 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -147,7 +147,7 @@ public final class URL implements Serializable /** * The protocol handler in use for this URL */ - transient private URLStreamHandler handler; + transient URLStreamHandler handler; /** * This a table where we cache protocol handlers to avoid the overhead diff --git a/libjava/java/net/URLStreamHandler.java b/libjava/java/net/URLStreamHandler.java index 37183b9..604279d 100644 --- a/libjava/java/net/URLStreamHandler.java +++ b/libjava/java/net/URLStreamHandler.java @@ -265,7 +265,15 @@ public abstract class URLStreamHandler return true; // This comparison is very conservative. It assumes that any // field can be null. - if (url1 == null || url2 == null || url1.getPort() != url2.getPort()) + if (url1 == null || url2 == null) + return false; + int p1 = url1.getPort (); + if (p1 == -1) + p1 = url1.handler.getDefaultPort (); + int p2 = url2.getPort (); + if (p2 == -1) + p2 = url2.handler.getDefaultPort (); + if (p1 != p2) return false; String s1, s2; s1 = url1.getProtocol();