Changeset 9f2fb28d7e4899695ccf5a92a3bba3396ebd2e7f

Show
Ignore:
Timestamp:
06/30/08 22:34:05 (2 months ago)
Author:
Rémi Denis-Courmont <rdenis@simphalempin.com>
git-committer:
Rémi Denis-Courmont <rdenis@simphalempin.com> 1214858045 +0300
git-parent:

[2d6a7985cf7e21b0b7d5f697366874105d225fe5]

git-author:
Rémi Denis-Courmont <rdenis@simphalempin.com> 1214855874 +0300
Message:

Remove the brain-damaged video output destruction code

Fixes crashes, deadlocks and assertions failure with #1650.
One cannot remove object references one does not own.

Reopens #1637.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • src/playlist/engine.c

    r7ca46db r9f2fb28  
    194194 
    195195    vlc_mutex_lock( &p_playlist->gc_lock ); 
    196     /* Remove video outputs when user presses stop: */ 
    197     vlc_list_t *list = vlc_list_find( p_playlist->p_libvlc, VLC_OBJECT_VOUT, 
    198                                       FIND_CHILD ); 
    199     if( list != NULL ) 
    200     { 
    201         msg_Dbg( p_playlist, "removing %u vout(s)", list->i_count ); 
    202         for( int i = 0; i < list->i_count; i++) 
    203             vlc_object_release( list->p_values[i].p_object ); 
    204         vlc_list_release( list ); 
    205     } 
    206196    p_playlist->b_cant_sleep = false; 
    207197    vlc_mutex_unlock( &p_playlist->gc_lock );