diff options
| author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2011-03-11 19:23:00 +0000 |
|---|---|---|
| committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2011-03-11 19:23:00 +0000 |
| commit | c2ee32b22aa50101fc092f610927cfbdd9a2d8f1 (patch) | |
| tree | 9104a62064dda0643c9604c63dee83a74c489d91 /firmware/target/hosted/android/lcd-android.c | |
| parent | 66f2a08f8a37933b9eff79ceabdc2cb42706e48c (diff) | |
| download | rockbox-c2ee32b22aa50101fc092f610927cfbdd9a2d8f1.zip rockbox-c2ee32b22aa50101fc092f610927cfbdd9a2d8f1.tar.gz rockbox-c2ee32b22aa50101fc092f610927cfbdd9a2d8f1.tar.bz2 rockbox-c2ee32b22aa50101fc092f610927cfbdd9a2d8f1.tar.xz | |
Partly revert "Android: use NewGlobalRef for references that are used globally"
The added complexity wasn't needed for most subsystems, as main() never returns
so local references can't be freed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29570 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/hosted/android/lcd-android.c')
| -rw-r--r-- | firmware/target/hosted/android/lcd-android.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/firmware/target/hosted/android/lcd-android.c b/firmware/target/hosted/android/lcd-android.c index 66ddcd5..f9d7917 100644 --- a/firmware/target/hosted/android/lcd-android.c +++ b/firmware/target/hosted/android/lcd-android.c @@ -46,7 +46,6 @@ static bool display_on; void connect_with_java(JNIEnv* env, jobject fb_instance) { JNIEnv e = *env; - /* Update RockboxFramebuffer_instance */ if (!e->IsSameObject(env, RockboxFramebuffer_instance, fb_instance)) { if (RockboxFramebuffer_instance != NULL) @@ -55,7 +54,7 @@ void connect_with_java(JNIEnv* env, jobject fb_instance) RockboxFramebuffer_instance = e->NewGlobalRef(env, fb_instance); } - static bool have_class = false; + static bool have_class; if (!have_class) { jclass fb_class = e->GetObjectClass(env, fb_instance); @@ -77,13 +76,10 @@ void connect_with_java(JNIEnv* env, jobject fb_instance) java_lcd_init = e->GetMethodID(env, fb_class, "java_lcd_init", "(IILjava/nio/ByteBuffer;)V"); - - jobject buffer = e->NewDirectByteBuffer(env, + + native_buffer = e->NewDirectByteBuffer(env, lcd_framebuffer, (jlong)sizeof(lcd_framebuffer)); - - native_buffer = e->NewGlobalRef(env, buffer); - have_class = true; } /* we need to setup parts for the java object every time */ @@ -96,7 +92,6 @@ void lcd_deinit(void) JNIEnv *env_ptr = getJavaEnvironment(); (*env_ptr)->DeleteGlobalRef(env_ptr, RockboxFramebuffer_instance); - (*env_ptr)->DeleteGlobalRef(env_ptr, native_buffer); } /* |