From: Thomas Guillem Date: Wed, 11 Mar 2015 14:00:47 +0000 (+0100) Subject: audiotrack: fix deadlock if JNIThread has an error X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=3bf7858739fcacda95cf5419190eae3c68371912;p=vlc audiotrack: fix deadlock if JNIThread has an error Signed-off-by: Jean-Baptiste Kempf --- diff --git a/modules/audio_output/audiotrack.c b/modules/audio_output/audiotrack.c index 922e8a2233..d388d1a884 100644 --- a/modules/audio_output/audiotrack.c +++ b/modules/audio_output/audiotrack.c @@ -1183,7 +1183,10 @@ JNIThread( void *data ) case CMD_TIME_GET: assert( p_sys->p_audiotrack ); if( b_error ) + { + p_cmd->out.time_get.i_ret = -1; break; + } p_cmd->out.time_get.i_ret = JNIThread_TimeGet( env, p_aout, &p_cmd->out.time_get.i_delay ); @@ -1202,6 +1205,8 @@ JNIThread( void *data ) } if( p_sys->b_audiotrack_exception ) b_error = true; + if( b_error ) + p_sys->i_samples_queued = 0; if( b_remove_cmd ) {