summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2011-03-11 22:48:10 +0000
committerThomas Martitz <kugel@rockbox.org>2011-03-11 22:48:10 +0000
commit662ba4868af3981dcc64e271f49ee0bd72cd19e5 (patch)
treef3e1d716cfd9bceb62c13301e3043387e0d168b4
parent00f75c92bf4f9b04cd919ef7f61ca68ddc93f94b (diff)
downloadrockbox-662ba4868af3981dcc64e271f49ee0bd72cd19e5.tar.gz
rockbox-662ba4868af3981dcc64e271f49ee0bd72cd19e5.zip
Create GlobalRef in surfaceCreated, in accordance to r29572.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29574 a1c6a512-1295-4272-9138-f99709370657
-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 b1d27280b0..172e832c2a 100644
--- a/firmware/target/hosted/android/lcd-android.c
+++ b/firmware/target/hosted/android/lcd-android.c
@@ -46,15 +46,8 @@ static bool display_on;
46void connect_with_java(JNIEnv* env, jobject fb_instance) 46void connect_with_java(JNIEnv* env, jobject fb_instance)
47{ 47{
48 JNIEnv e = *env; 48 JNIEnv e = *env;
49 /* Update RockboxFramebuffer_instance */
50 if (!e->IsSameObject(env, RockboxFramebuffer_instance, fb_instance)) {
51 if (RockboxFramebuffer_instance != NULL)
52 e->DeleteGlobalRef(env, RockboxFramebuffer_instance);
53
54 RockboxFramebuffer_instance = e->NewGlobalRef(env, fb_instance);
55 }
56
57 static bool have_class; 49 static bool have_class;
50
58 if (!have_class) 51 if (!have_class)
59 { 52 {
60 jclass fb_class = e->GetObjectClass(env, fb_instance); 53 jclass fb_class = e->GetObjectClass(env, fb_instance);
@@ -123,6 +116,8 @@ Java_org_rockbox_RockboxFramebuffer_surfaceCreated(JNIEnv *env, jobject this,
123 jobject surfaceholder) 116 jobject surfaceholder)
124{ 117{
125 (void)surfaceholder; 118 (void)surfaceholder;
119 /* Update RockboxFramebuffer_instance */
120 RockboxFramebuffer_instance = (*env)->NewGlobalRef(env, this);
126 /* possibly a new instance - reconnect */ 121 /* possibly a new instance - reconnect */
127 connect_with_java(env, this); 122 connect_with_java(env, this);
128 display_on = true; 123 display_on = true;