i_ret = playlist_Control( p_sys->p_playlist, PLAYLIST_VIEWPLAY,
pl_Locked, NULL,
playlist_ItemGetById( p_sys->p_playlist,
- i_id, pl_Locked ) );
+ i_id ) );
playlist_Unlock( p_sys->p_playlist );
msg_Dbg( p_intf, "requested playlist item: %i", i_id );
SSPushN( st, i_ret );
{
playlist_item_t *p_item;
msg_Dbg( p_intf, "requested mrl add: %s", mrl );
+ playlist_Lock( p_sys->p_playlist );
p_item = playlist_ItemGetByInput( p_sys->p_playlist,
- p_input,
- pl_Unlocked );
+ p_input );
if( p_item )
i_ret = p_item->i_id;
+ playlist_Unlock( p_sys->p_playlist );
}
else
msg_Warn( p_intf, "adding mrl %s failed", mrl );
else if( !strcmp( s, "playlist_delete" ) )
{
int i_id = SSPopN( st, vars );
+ playlist_Lock( p_sys->p_playlist );
playlist_item_t *p_item = playlist_ItemGetById( p_sys->p_playlist,
- i_id, pl_Unlocked );
+ i_id );
if( p_item )
{
playlist_DeleteFromInput( p_sys->p_playlist,
- p_item->p_input->i_id, pl_Unlocked );
+ p_item->p_input->i_id, pl_Locked );
msg_Dbg( p_intf, "requested playlist delete: %d", i_id );
}
else
msg_Dbg( p_intf, "couldn't find playlist item to delete (%d)",
i_id );
}
+ playlist_Unlock( p_sys->p_playlist );
}
else if( !strcmp( s, "playlist_move" ) )
{
vout_thread_t *p_vout = input_GetVout( p_sys->p_input );
if( p_vout )
{
- vout_Control( p_vout, VOUT_SNAPSHOT );
+ vout_TriggerCallback( p_vout, "video-snapshot" );
vlc_object_release( p_vout );
msg_Dbg( p_intf, "requested snapshot" );
}