From 7fa9aa855645f1c9f047e52a10f6da717b93edc6 Mon Sep 17 00:00:00 2001 From: Dalibor Topic Date: Mon, 6 Mar 2006 02:42:18 +0000 Subject: fixed bug in file connection unicode character decoding 2006-03-06 Dalibor Topic * gnu/java/net/protocol/file/Connection.java (unquote): Update position in buffer after decoding a unicode character outside of the basic plane. --- ChangeLog | 6 ++++++ gnu/java/net/protocol/file/Connection.java | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 3ae2935ff..8395b46b1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2006-03-06 Dalibor Topic + + * gnu/java/net/protocol/file/Connection.java (unquote): + Update position in buffer after decoding a unicode character + outside of the basic plane. + 2006-03-06 Robert Schuster * javax/swing/plaf/basic/BasicTextUI.java: diff --git a/gnu/java/net/protocol/file/Connection.java b/gnu/java/net/protocol/file/Connection.java index f7253b093..04278d46a 100644 --- a/gnu/java/net/protocol/file/Connection.java +++ b/gnu/java/net/protocol/file/Connection.java @@ -160,7 +160,9 @@ public class Connection extends URLConnection else if (c > 127) { try { byte [] c_as_bytes = Character.toString(c).getBytes("utf-8"); - System.arraycopy(c_as_bytes, 0, buf, pos, c_as_bytes.length); + final int c_length = c_as_bytes.length; + System.arraycopy(c_as_bytes, 0, buf, pos, c_length); + pos += c_length; } catch (java.io.UnsupportedEncodingException x2) { throw (Error) new InternalError().initCause(x2); -- cgit v1.2.1