Commit a3069143 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

interaction: fix signal leak

There is no point in unlocking and locking again immediatly.
Not only will this typically fail to yield the CPU to another would-be
waiting thread, but vlc_object_wait() will unlock&lock anyway.
parent 4463b6cb
...@@ -535,17 +535,13 @@ static void InteractionLoop( vlc_object_t *p_this ) ...@@ -535,17 +535,13 @@ static void InteractionLoop( vlc_object_t *p_this )
int i; int i;
interaction_t *p_interaction = (interaction_t*) p_this; interaction_t *p_interaction = (interaction_t*) p_this;
while( !p_this->b_die )
{
vlc_object_lock( p_this ); vlc_object_lock( p_this );
if( vlc_object_wait( p_this ) ) while( vlc_object_alive( p_this ) )
{ {
vlc_object_unlock( p_this );
break;
}
InteractionManage( p_interaction ); InteractionManage( p_interaction );
vlc_object_unlock( p_this ); vlc_object_wait( p_this );
} }
vlc_object_unlock( p_this );
/* Remove all dialogs - Interfaces must be able to clean up their data */ /* Remove all dialogs - Interfaces must be able to clean up their data */
for( i = p_interaction->i_dialogs -1 ; i >= 0; i-- ) for( i = p_interaction->i_dialogs -1 ; i >= 0; i-- )
......
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