X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fplaylist%2Fthread.c;h=9d42c3fedb774bc6a6612f8f94e765d2efba1071;hb=6e160dae0fe92597775f55dff05937dae709ab04;hp=3e7bf06ed0e06cfdb0ab55d019f7c658cdbd85d6;hpb=78d87996ccb92d1dc91c9987685f976ed3be08a6;p=vlc diff --git a/src/playlist/thread.c b/src/playlist/thread.c index 3e7bf06ed0..9d42c3fedb 100644 --- a/src/playlist/thread.c +++ b/src/playlist/thread.c @@ -25,6 +25,8 @@ # include "config.h" #endif +#include + #include #include #include @@ -81,8 +83,8 @@ void playlist_Deactivate( playlist_t *p_playlist ) msg_Dbg( p_playlist, "Deactivate" ); - vlc_object_kill( p_playlist ); PL_LOCK; + vlc_object_kill( p_playlist ); vlc_cond_signal( &p_sys->signal ); PL_UNLOCK; @@ -107,8 +109,8 @@ void playlist_Deactivate( playlist_t *p_playlist ) input_resource_Delete( p_sys->p_input_resource ); p_sys->p_input_resource = NULL; - /* */ - playlist_MLDump( p_playlist ); + if( var_InheritBool( p_playlist, "media-library" ) ) + playlist_MLDump( p_playlist ); PL_LOCK; @@ -257,6 +259,8 @@ static int PlayItem( playlist_t *p_playlist, playlist_item_t *p_item ) p_sys->p_input = p_input_thread; var_AddCallback( p_input_thread, "intf-event", InputEvent, p_playlist ); + var_SetAddress( p_playlist, "input-current", p_input_thread ); + if( input_Start( p_sys->p_input ) ) { vlc_object_release( p_input_thread ); @@ -295,7 +299,7 @@ static int PlayItem( playlist_t *p_playlist, playlist_item_t *p_item ) free( psz_arturl ); free( psz_name ); } - + /* FIXME: this is not safe !!*/ PL_UNLOCK; var_SetAddress( p_playlist, "item-current", p_input ); PL_LOCK;