From 0103fd959a37be1ccc9ee5c59fb84f9610b0bc74 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Kempf Date: Wed, 3 Apr 2013 15:13:50 +0200 Subject: [PATCH] MediaCodec: handle exceptions on Flush --- modules/codec/omxil/android_mediacodec.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/modules/codec/omxil/android_mediacodec.c b/modules/codec/omxil/android_mediacodec.c index dd9171e2bc..c4b712c23b 100644 --- a/modules/codec/omxil/android_mediacodec.c +++ b/modules/codec/omxil/android_mediacodec.c @@ -506,8 +506,13 @@ static picture_t *DecodeVideo(decoder_t *p_dec, block_t **pp_block) if (p_block->i_flags & (BLOCK_FLAG_DISCONTINUITY|BLOCK_FLAG_CORRUPTED)) { block_Release(p_block); - if (p_sys->decoded) + if (p_sys->decoded) { (*env)->CallVoidMethod(env, p_sys->codec, p_sys->flush); + if ((*env)->ExceptionOccurred(env)) { + msg_Warn(p_dec, "Exception occurred in MediaCodec.flush"); + (*env)->ExceptionClear(env); + } + } p_sys->decoded = 0; (*myVm)->DetachCurrentThread(myVm); return NULL; -- 2.39.2