From 188bcf698ad54a874a00addb7cb22aae25ee4c99 Mon Sep 17 00:00:00 2001 From: Gabriel Jacobo Date: Mon, 22 Apr 2013 11:18:45 -0300 Subject: [PATCH] Fixes #1815, don't release the LocalRef returned by SDL_AndroidGetActivity --- src/core/android/SDL_android.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/core/android/SDL_android.cpp b/src/core/android/SDL_android.cpp index 5ae8f93a0..5ab147e2a 100644 --- a/src/core/android/SDL_android.cpp +++ b/src/core/android/SDL_android.cpp @@ -1130,13 +1130,18 @@ extern "C" void *SDL_AndroidGetJNIEnv() return Android_JNI_GetEnv(); } +/* + * The jobject returned by SDL_AndroidGetActivity is a local reference. + * It is the caller's responsibility to properly release it + * (using LocalReferenceHolder or manually with env->DeleteLocalRef) + */ + extern "C" void *SDL_AndroidGetActivity() { - LocalReferenceHolder refs(__FUNCTION__); jmethodID mid; JNIEnv *env = Android_JNI_GetEnv(); - if (!refs.init(env)) { + if (!env) { return NULL; }