Commit 4637aca0 authored by Thomas Guillem's avatar Thomas Guillem

decoder: don't wait if paused

parent 1110e12a
...@@ -2030,9 +2030,12 @@ void input_DecoderWait( decoder_t *p_dec ) ...@@ -2030,9 +2030,12 @@ void input_DecoderWait( decoder_t *p_dec )
vlc_mutex_lock( &p_owner->lock ); vlc_mutex_lock( &p_owner->lock );
while( !p_owner->b_has_data ) while( !p_owner->b_has_data )
{ {
/* Don't need to lock p_owner->paused since it's only modified by the
* owner */
if( p_owner->paused )
break;
vlc_fifo_Lock( p_owner->p_fifo ); vlc_fifo_Lock( p_owner->p_fifo );
if( p_owner->b_idle if( p_owner->b_idle && vlc_fifo_IsEmpty( p_owner->p_fifo ) )
&& (vlc_fifo_IsEmpty( p_owner->p_fifo ) || p_owner->paused) )
{ {
msg_Err( p_dec, "buffer deadlock prevented" ); msg_Err( p_dec, "buffer deadlock prevented" );
vlc_fifo_Unlock( p_owner->p_fifo ); vlc_fifo_Unlock( p_owner->p_fifo );
......
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