Commit ef5d32ea authored by Jean-Philippe André's avatar Jean-Philippe André

Extensions: hopefully fix a race condition on deactivation

parent 1f3bd0cc
...@@ -199,7 +199,9 @@ static int RemoveActivated( extensions_manager_t *p_mgr, extension_t *p_ext ) ...@@ -199,7 +199,9 @@ static int RemoveActivated( extensions_manager_t *p_mgr, extension_t *p_ext )
void WaitForDeactivation( extension_t *p_ext ) void WaitForDeactivation( extension_t *p_ext )
{ {
void *pointer = NULL; void *pointer = NULL;
vlc_mutex_lock( &p_ext->p_sys->command_lock );
vlc_cond_signal( &p_ext->p_sys->wait ); vlc_cond_signal( &p_ext->p_sys->wait );
vlc_mutex_unlock( &p_ext->p_sys->command_lock );
vlc_join( p_ext->p_sys->thread, &pointer ); vlc_join( p_ext->p_sys->thread, &pointer );
} }
...@@ -383,7 +385,7 @@ static void* Run( void *data ) ...@@ -383,7 +385,7 @@ static void* Run( void *data )
} }
vlc_mutex_unlock( &p_ext->p_sys->command_lock ); vlc_mutex_unlock( &p_ext->p_sys->command_lock );
msg_Dbg( p_mgr, "Extension thread ending..." ); msg_Dbg( p_mgr, "Extension thread end: '%s'", p_ext->psz_title );
// Note: At this point, the extension should be deactivated // Note: At this point, the extension should be deactivated
return NULL; return NULL;
......
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