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
This commit is contained in:
Tom Tromey 2003-07-28 16:12:00 +00:00 committed by Tom Tromey
parent 5dfa45d043
commit 651bed366a
3 changed files with 18 additions and 1 deletions

View File

@ -1,3 +1,12 @@
2003-07-28 Tom Tromey <tromey@redhat.com>
* 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 <green@redhat.com>
* configure.in: Fix newlib check.

View File

@ -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();
}

View File

@ -28,6 +28,7 @@ details. */
#include <java/util/Locale.h>
#include <gnu/gcj/convert/UnicodeToBytes.h>
#include <gnu/gcj/convert/BytesToUnicode.h>
#include <gnu/gcj/runtime/StringBuffer.h>
#include <jvm.h>
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)
{