summaryrefslogtreecommitdiffstats
path: root/libjava
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>1999-04-21 13:50:39 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>1999-04-21 13:50:39 +0000
commit3f3167de05d41e458d01b32362ea0fca2409a4e9 (patch)
treed5ee50159f44032acf2cf8931827e14bf35df694 /libjava
parent53bd31b59a04dd78049c5bbc67c4d26f98c7653f (diff)
downloadppe42-gcc-3f3167de05d41e458d01b32362ea0fca2409a4e9.tar.gz
ppe42-gcc-3f3167de05d41e458d01b32362ea0fca2409a4e9.zip
* java/lang/natString.cc (getBytes): Reverted earlier change and
applied correct fix from Per Bothner. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26579 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava')
-rw-r--r--libjava/ChangeLog3
-rw-r--r--libjava/java/lang/natString.cc8
2 files changed, 8 insertions, 3 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index b2b035418ce..da93b9cc831 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,5 +1,8 @@
1999-04-21 Tom Tromey <tromey@cygnus.com>
+ * 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 cbd36bb3f97..08f1755715d 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;
}
OpenPOWER on IntegriCloud