Commit b9740273 authored by Clément Stenac's avatar Clément Stenac

Fix play-and-stop behaviour with playlist_Command

parent 94cae6a5
...@@ -400,15 +400,22 @@ static void RunThread ( playlist_t *p_playlist ) ...@@ -400,15 +400,22 @@ static void RunThread ( playlist_t *p_playlist )
} }
else if( p_playlist->i_status != PLAYLIST_STOPPED ) else if( p_playlist->i_status != PLAYLIST_STOPPED )
{ {
/* Start another input. Let's check if that item has
* been forced. In that case, we override random (by not skipping)
* and play-and-stop */
vlc_bool_t b_forced;
var_Get( p_playlist, "prevent-skip", &val ); var_Get( p_playlist, "prevent-skip", &val );
b_forced = val.b_bool;
if( val.b_bool == VLC_FALSE ) if( val.b_bool == VLC_FALSE )
{ {
SkipItem( p_playlist, 0 ); SkipItem( p_playlist, 0 );
} }
val.b_bool = VLC_TRUE; /* Reset forced status */
val.b_bool = VLC_FALSE;
var_Set( p_playlist, "prevent-skip", val ); var_Set( p_playlist, "prevent-skip", val );
/* Check for play-and-stop */
var_Get( p_playlist, "play-and-stop", &val ); var_Get( p_playlist, "play-and-stop", &val );
if( val.b_bool == VLC_FALSE ) if( val.b_bool == VLC_FALSE || b_forced == VLC_TRUE )
{ {
PlayItem( p_playlist ); PlayItem( p_playlist );
} }
......
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