diff options
author | Thomas Martitz <kugel@rockbox.org> | 2011-03-11 22:48:10 +0000 |
---|---|---|
committer | Thomas Martitz <kugel@rockbox.org> | 2011-03-11 22:48:10 +0000 |
commit | 662ba4868af3981dcc64e271f49ee0bd72cd19e5 (patch) | |
tree | f3e1d716cfd9bceb62c13301e3043387e0d168b4 /firmware/target/hosted | |
parent | 00f75c92bf4f9b04cd919ef7f61ca68ddc93f94b (diff) | |
download | rockbox-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
Diffstat (limited to 'firmware/target/hosted')
-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 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; | |||
46 | void connect_with_java(JNIEnv* env, jobject fb_instance) | 46 | void 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; |