From: Steve Block Date: Tue, 19 Jul 2011 15:57:32 +0000 (+0100) Subject: Cherry-pick WebKit change 91260 to fix JNI string null-termination X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=4f25266c21bdd7dcd9996807fae04f7dfb0373de;p=android-x86%2Fexternal-webkit.git Cherry-pick WebKit change 91260 to fix JNI string null-termination See http://trac.webkit.org/changeset/91260 Bug: 4727789 Change-Id: I2f01bde12463a3c19659340cdb85b69eaecbd0f7 --- diff --git a/Source/WebCore/bridge/jni/v8/JNIUtilityPrivate.cpp b/Source/WebCore/bridge/jni/v8/JNIUtilityPrivate.cpp index cd04634bc..0d1a9f256 100644 --- a/Source/WebCore/bridge/jni/v8/JNIUtilityPrivate.cpp +++ b/Source/WebCore/bridge/jni/v8/JNIUtilityPrivate.cpp @@ -429,10 +429,10 @@ JavaValue jvalueToJavaValue(const jvalue& value, const JavaType& type) case JavaTypeString: { jstring javaString = static_cast(value.l); - const UChar* a = getUCharactersFromJStringInEnv(getJNIEnv(), javaString); + const UChar* characters = getUCharactersFromJStringInEnv(getJNIEnv(), javaString); // We take a copy to allow the Java String to be released. - result.m_stringValue = String(a).threadsafeCopy(); - releaseUCharactersForJStringInEnv(getJNIEnv(), javaString, a); + result.m_stringValue = String(characters, getJNIEnv()->GetStringLength(javaString)); + releaseUCharactersForJStringInEnv(getJNIEnv(), javaString, characters); } break; case JavaTypeBoolean: