diff options
-rw-r--r-- | libjava/ChangeLog | 6 | ||||
-rw-r--r-- | libjava/java/net/Inet6Address.java | 13 |
2 files changed, 9 insertions, 10 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index f475b05..5153b6c 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,9 @@ +2004-11-18 Mattias Rehnberg <Mattias.Rehnberg@home.se> + + * java/net/Inet6Address.java (getHostAddress): Fix textual + representation of IPv6 address with embedded zeroes + to conform to RFC 2373. + 2004-11-18 Jeroen Frijters <address@bogus.example.com> * java/lang/StackTraceElement.java: Made final. diff --git a/libjava/java/net/Inet6Address.java b/libjava/java/net/Inet6Address.java index e0329d5..0c1d60e 100644 --- a/libjava/java/net/Inet6Address.java +++ b/libjava/java/net/Inet6Address.java @@ -207,18 +207,11 @@ public final class Inet6Address extends InetAddress for (int i = 0; i < 16; i += 2) { int x = ((ipaddress[i] & 0xFF) << 8) | (ipaddress[i + 1] & 0xFF); - boolean empty = sbuf.length() == 0; - - if (empty) - { - if (i > 0) - sbuf.append("::"); - } - else + + if (i > 0) sbuf.append(':'); - if (x != 0 || i >= 14) - sbuf.append(Integer.toHexString(x)); + sbuf.append(Integer.toHexString(x)); } return sbuf.toString(); |