diff options
author | Steve Block <steveblock@google.com> | 2010-10-27 15:47:41 +0100 |
---|---|---|
committer | Steve Block <steveblock@google.com> | 2010-10-28 11:12:43 +0100 |
commit | bf3f67c4fcfd68df256e5c001c67969997a63e28 (patch) | |
tree | e78cada468d14c9cd244f2f565b90918b7e0bc57 /WebKit/android/jni/WebCoreFrameBridge.cpp | |
parent | e59ed3e2c930c8eeed844aa0365e8285d956a8f2 (diff) | |
download | external_webkit-bf3f67c4fcfd68df256e5c001c67969997a63e28.zip external_webkit-bf3f67c4fcfd68df256e5c001c67969997a63e28.tar.gz external_webkit-bf3f67c4fcfd68df256e5c001c67969997a63e28.tar.bz2 |
Make sure we delete local references to jclass objects
Change-Id: I1b398bd0a84ce366eb2e686e5f14335d7aa5ed31
Diffstat (limited to 'WebKit/android/jni/WebCoreFrameBridge.cpp')
-rw-r--r-- | WebKit/android/jni/WebCoreFrameBridge.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/WebKit/android/jni/WebCoreFrameBridge.cpp b/WebKit/android/jni/WebCoreFrameBridge.cpp index 42843e0..bc20c47 100644 --- a/WebKit/android/jni/WebCoreFrameBridge.cpp +++ b/WebKit/android/jni/WebCoreFrameBridge.cpp @@ -276,6 +276,7 @@ WebFrame::WebFrame(JNIEnv* env, jobject obj, jobject historyList, WebCore::Page* "(ILjava/lang/String;Ljava/lang/String;Z)V"); mJavaFrame->mDownloadStart = env->GetMethodID(clazz, "downloadStart", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V"); + env->DeleteLocalRef(clazz); LOG_ASSERT(mJavaFrame->mInputStreamForAndroidResource, "Could not find method inputStreamForAndroidResource"); LOG_ASSERT(mJavaFrame->mStartLoadingResource, "Could not find method startLoadingResource"); @@ -1708,6 +1709,7 @@ static jobjectArray GetUsernamePassword(JNIEnv *env, jobject obj) if (found) { jclass stringClass = env->FindClass("java/lang/String"); strArray = env->NewObjectArray(2, stringClass, NULL); + env->DeleteLocalRef(stringClass); env->SetObjectArrayElement(strArray, 0, env->NewString(username.characters(), username.length())); env->SetObjectArrayElement(strArray, 1, env->NewString(password.characters(), password.length())); } @@ -1921,6 +1923,7 @@ int registerWebFrame(JNIEnv* env) LOG_ASSERT(clazz, "Cannot find BrowserFrame"); gFrameField = env->GetFieldID(clazz, "mNativeFrame", "I"); LOG_ASSERT(gFrameField, "Cannot find mNativeFrame on BrowserFrame"); + env->DeleteLocalRef(clazz); return jniRegisterNativeMethods(env, "android/webkit/BrowserFrame", gBrowserFrameNativeMethods, NELEM(gBrowserFrameNativeMethods)); |