Commit 6ce78b99 authored by Thomas Guillem's avatar Thomas Guillem

android: update with last jni_LockAndGetAndroidJavaSurface changes

if jni_LockAndGetAndroidJavaSurface returns NULL, no need to unlock.
parent 0b83473c
...@@ -628,11 +628,11 @@ loopclean: ...@@ -628,11 +628,11 @@ loopclean:
goto error; goto error;
} }
p_dec->fmt_out.i_codec = VLC_CODEC_ANDROID_OPAQUE; p_dec->fmt_out.i_codec = VLC_CODEC_ANDROID_OPAQUE;
jni_UnlockAndroidSurface();
} else { } else {
msg_Warn(p_dec, "Failed to get the Android Surface, disabling direct rendering."); msg_Warn(p_dec, "Failed to get the Android Surface, disabling direct rendering.");
p_sys->direct_rendering = false; p_sys->direct_rendering = false;
} }
jni_UnlockAndroidSurface();
} }
if (!p_sys->direct_rendering) { if (!p_sys->direct_rendering) {
(*env)->CallVoidMethod(env, p_sys->codec, jfields.configure, format, NULL, NULL, 0); (*env)->CallVoidMethod(env, p_sys->codec, jfields.configure, format, NULL, NULL, 0);
......
...@@ -2060,7 +2060,6 @@ static void HwBuffer_Init( decoder_t *p_dec, OmxPort *p_port ) ...@@ -2060,7 +2060,6 @@ static void HwBuffer_Init( decoder_t *p_dec, OmxPort *p_port )
surf = jni_LockAndGetAndroidJavaSurface(); surf = jni_LockAndGetAndroidJavaSurface();
if( !surf ) { if( !surf ) {
jni_UnlockAndroidSurface();
msg_Warn( p_dec, "jni_LockAndGetAndroidJavaSurface failed" ); msg_Warn( p_dec, "jni_LockAndGetAndroidJavaSurface failed" );
goto error; goto error;
} }
......
...@@ -578,6 +578,8 @@ static int SetupWindowSurface(vout_display_sys_t *sys, unsigned i_pic_count) ...@@ -578,6 +578,8 @@ static int SetupWindowSurface(vout_display_sys_t *sys, unsigned i_pic_count)
{ {
int err; int err;
jobject jsurf = jni_LockAndGetAndroidJavaSurface(); jobject jsurf = jni_LockAndGetAndroidJavaSurface();
if (!jsurf)
return -1;
err = AndroidWindow_SetSurface(sys, sys->p_window, jsurf); err = AndroidWindow_SetSurface(sys, sys->p_window, jsurf);
jni_UnlockAndroidSurface(); jni_UnlockAndroidSurface();
err = err == 0 ? AndroidWindow_Setup(sys, sys->p_window, i_pic_count) : err; err = err == 0 ? AndroidWindow_Setup(sys, sys->p_window, i_pic_count) : err;
...@@ -588,6 +590,8 @@ static int SetupWindowSubtitleSurface(vout_display_sys_t *sys) ...@@ -588,6 +590,8 @@ static int SetupWindowSubtitleSurface(vout_display_sys_t *sys)
{ {
int err; int err;
jobject jsurf = jni_LockAndGetSubtitlesSurface(); jobject jsurf = jni_LockAndGetSubtitlesSurface();
if (!jsurf)
return -1;
err = AndroidWindow_SetSurface(sys, sys->p_sub_window, jsurf); err = AndroidWindow_SetSurface(sys, sys->p_sub_window, jsurf);
jni_UnlockAndroidSurface(); jni_UnlockAndroidSurface();
err = err == 0 ? AndroidWindow_Setup(sys, sys->p_sub_window, 1) : err; err = err == 0 ? AndroidWindow_Setup(sys, sys->p_sub_window, 1) : err;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment