OSDN Git Service

audio effect JNI: fix global ref leak.
authorEric Laurent <elaurent@google.com>
Fri, 19 Jun 2015 16:13:02 +0000 (09:13 -0700)
committerEric Laurent <elaurent@google.com>
Fri, 19 Jun 2015 16:13:02 +0000 (09:13 -0700)
Remove one more global ref leak in AudioEffect
and Visualizer JNI.

Bug: 21629892.
Change-Id: Id77fc2d10f3dc9d3154d6a1cf0f8cc0f83683584

media/jni/audioeffect/android_media_AudioEffect.cpp
media/jni/audioeffect/android_media_Visualizer.cpp

index fdc586b..aba4bbe 100644 (file)
@@ -472,6 +472,8 @@ static void android_media_AudioEffect_native_release(JNIEnv *env,  jobject thiz)
 
     if (lpJniStorage) {
         ALOGV("deleting pJniStorage: %p\n", lpJniStorage);
+        env->DeleteGlobalRef(lpJniStorage->mCallbackData.audioEffect_class);
+        env->DeleteGlobalRef(lpJniStorage->mCallbackData.audioEffect_ref);
         delete lpJniStorage;
     }
 }
index 6098b4a..0557019 100644 (file)
@@ -450,6 +450,8 @@ static void android_media_visualizer_native_release(JNIEnv *env,  jobject thiz)
 
     if (lpJniStorage) {
         ALOGV("deleting pJniStorage: %p\n", lpJniStorage);
+        env->DeleteGlobalRef(lpJniStorage->mCallbackData.visualizer_class);
+        env->DeleteGlobalRef(lpJniStorage->mCallbackData.visualizer_ref);
         delete lpJniStorage;
     }
 }