summaryrefslogtreecommitdiff
path: root/firmware/target/hosted/android/lcd-android.c
diff options
context:
space:
mode:
authorMaurus Cuelenaere <mcuelenaere@gmail.com>2011-03-11 19:23:00 +0000
committerMaurus Cuelenaere <mcuelenaere@gmail.com>2011-03-11 19:23:00 +0000
commitc2ee32b22aa50101fc092f610927cfbdd9a2d8f1 (patch)
tree9104a62064dda0643c9604c63dee83a74c489d91 /firmware/target/hosted/android/lcd-android.c
parent66f2a08f8a37933b9eff79ceabdc2cb42706e48c (diff)
downloadrockbox-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.c11
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);
}
/*