From: Tom Tromey Date: Mon, 28 Jul 2003 16:12:00 +0000 (+0000) Subject: natString.cc (init(gnu.gcj.runtime.StringBuffer)): New method. X-Git-Tag: releases/gcc-3.4.0~4559 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=651bed366a537cac8a9561d749e0a83e277259ce;p=thirdparty%2Fgcc.git natString.cc (init(gnu.gcj.runtime.StringBuffer)): New method. * java/lang/natString.cc (init(gnu.gcj.runtime.StringBuffer)): New method. Include gnu/gcj/runtime/StringBuffer.h. * java/lang/String.java (init(gnu.gcj.runtime.StringBuffer)): New native method. (String(gnu.gcj.runtime.StringBuffer)): Use it. From-SVN: r69890 --- diff --git a/libjava/ChangeLog b/libjava/ChangeLog index f7d6e0de3223..9c4177f9fd47 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,12 @@ +2003-07-28 Tom Tromey + + * java/lang/natString.cc (init(gnu.gcj.runtime.StringBuffer)): + New method. + Include gnu/gcj/runtime/StringBuffer.h. + * java/lang/String.java (init(gnu.gcj.runtime.StringBuffer)): New + native method. + (String(gnu.gcj.runtime.StringBuffer)): Use it. + 2003-07-27 Anthony Green * configure.in: Fix newlib check. diff --git a/libjava/java/lang/String.java b/libjava/java/lang/String.java index fe00b9100cc2..6844405e34c5 100644 --- a/libjava/java/lang/String.java +++ b/libjava/java/lang/String.java @@ -419,7 +419,7 @@ public final class String implements Serializable, Comparable, CharSequence { // No need to synchronize or mark the buffer, since we know it is // only used once. - init (buffer.value, 0, buffer.count, true); + init (buffer); } /** @@ -1253,5 +1253,6 @@ public final class String implements Serializable, Comparable, CharSequence private native void init(byte[] chars, int hibyte, int offset, int count); private native void init(byte[] chars, int offset, int count, String enc) throws UnsupportedEncodingException; + private native void init(gnu.gcj.runtime.StringBuffer buffer); private static native void rehash(); } diff --git a/libjava/java/lang/natString.cc b/libjava/java/lang/natString.cc index 98309cfe62ea..6fd928478b56 100644 --- a/libjava/java/lang/natString.cc +++ b/libjava/java/lang/natString.cc @@ -28,6 +28,7 @@ details. */ #include #include #include +#include #include static void unintern (jobject); @@ -525,6 +526,12 @@ java::lang::String::init (jbyteArray bytes, jint offset, jint count, this->count = outpos; } +void +java::lang::String::init (gnu::gcj::runtime::StringBuffer *buffer) +{ + init (buffer->value, 0, buffer->count, true); +} + jboolean java::lang::String::equals(jobject anObject) {