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/WebHistory.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/WebHistory.cpp')
-rw-r--r-- | WebKit/android/jni/WebHistory.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/WebKit/android/jni/WebHistory.cpp b/WebKit/android/jni/WebHistory.cpp index 474574e..deff687 100644 --- a/WebKit/android/jni/WebHistory.cpp +++ b/WebKit/android/jni/WebHistory.cpp @@ -329,6 +329,7 @@ void WebHistory::AddItem(const AutoJObject& list, WebCore::HistoryItem* item) // Allocate a blank WebHistoryItem jclass clazz = env->FindClass("android/webkit/WebHistoryItem"); jobject newItem = env->NewObject(clazz, gWebHistoryItem.mInit); + env->DeleteLocalRef(clazz); // Create the bridge, make it active, and attach it to the item. WebHistoryItem* bridge = new WebHistoryItem(env, newItem, item); @@ -815,6 +816,7 @@ int registerWebHistory(JNIEnv* env) LOG_ASSERT(gWebHistoryItem.mTitle, "Could not find field mTitle in WebHistoryItem"); gWebHistoryItem.mUrl = env->GetFieldID(clazz, "mUrl", "Ljava/lang/String;"); LOG_ASSERT(gWebHistoryItem.mUrl, "Could not find field mUrl in WebHistoryItem"); + env->DeleteLocalRef(clazz); // Find the WebBackForwardList object and method. clazz = env->FindClass("android/webkit/WebBackForwardList"); @@ -827,6 +829,7 @@ int registerWebHistory(JNIEnv* env) LOG_ASSERT(gWebBackForwardList.mRemoveHistoryItem, "Could not find method removeHistoryItem"); gWebBackForwardList.mSetCurrentIndex = env->GetMethodID(clazz, "setCurrentIndex", "(I)V"); LOG_ASSERT(gWebBackForwardList.mSetCurrentIndex, "Could not find method setCurrentIndex"); + env->DeleteLocalRef(clazz); int result = jniRegisterNativeMethods(env, "android/webkit/WebBackForwardList", gWebBackForwardListMethods, NELEM(gWebBackForwardListMethods)); |