From baa288f308a8b1b86607995fe71258d7e3cc2825 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Wed, 21 Apr 1999 13:50:39 +0000 Subject: natString.cc (getBytes): Reverted earlier change and applied correct fix from Per Bothner. * java/lang/natString.cc (getBytes): Reverted earlier change and applied correct fix from Per Bothner. From-SVN: r26579 --- libjava/ChangeLog | 3 +++ libjava/java/lang/natString.cc | 8 +++++--- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'libjava') diff --git a/libjava/ChangeLog b/libjava/ChangeLog index b2b0354..da93b9c 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,5 +1,8 @@ 1999-04-21 Tom Tromey + * java/lang/natString.cc (getBytes): Reverted earlier change and + applied correct fix from Per Bothner. + * java/lang/String.java: Don't throw UnsupportedEncodingException. diff --git a/libjava/java/lang/natString.cc b/libjava/java/lang/natString.cc index cbd36bb..08f1755 100644 --- a/libjava/java/lang/natString.cc +++ b/libjava/java/lang/natString.cc @@ -473,9 +473,11 @@ java::lang::String::getBytes (jstring enc) { converter->setOutput(buffer, bufpos); int converted = converter->write(this, offset, todo, NULL); + bufpos = converter->count; if (converted == 0) { - jbyteArray newbuffer = JvNewByteArray(2 * buflen); + buflen *= 2; + jbyteArray newbuffer = JvNewByteArray(buflen); memcpy (elements (newbuffer), elements (buffer), bufpos); buffer = newbuffer; } @@ -487,8 +489,8 @@ java::lang::String::getBytes (jstring enc) } if (bufpos == buflen) return buffer; - jbyteArray result = JvNewByteArray(buflen); - memcpy (elements (result), elements (buffer), buflen); + jbyteArray result = JvNewByteArray(bufpos); + memcpy (elements (result), elements (buffer), bufpos); return result; } -- cgit v1.1