p_playlist->status.p_item );
p_playlist->i_current_index++;
+ assert( p_playlist->i_current_index <= p_playlist->current.i_size );
if( p_playlist->i_current_index == p_playlist->current.i_size )
{
if( !b_loop || p_playlist->current.i_size == 0 ) return NULL;
* - Request, running requested -> start new item
* - Request, stopped requested -> collect garbage
*/
- if( p_playlist->request.i_status != PLAYLIST_STOPPED )
+ int i_status = p_playlist->request.b_request ?
+ p_playlist->request.i_status : p_playlist->status.i_status;
+ if( i_status != PLAYLIST_STOPPED )
{
msg_Dbg( p_playlist, "starting new item" );
p_item = playlist_NextItem( p_playlist );