diff options
Diffstat (limited to 'src/queue/PlaylistEdit.cxx')
-rw-r--r-- | src/queue/PlaylistEdit.cxx | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/src/queue/PlaylistEdit.cxx b/src/queue/PlaylistEdit.cxx index ef409a260..e8f1a178f 100644 --- a/src/queue/PlaylistEdit.cxx +++ b/src/queue/PlaylistEdit.cxx @@ -204,12 +204,8 @@ playlist::DeleteInternal(PlayerControl &pc, if (playing && current == (int)songOrder) { const bool paused = pc.GetState() == PlayerState::PAUSE; - /* the current song is going to be deleted: stop the player */ - - pc.Stop(); - playing = false; - - /* see which song is going to be played instead */ + /* the current song is going to be deleted: see which + song is going to be played instead */ current = queue.GetNextOrder(current); if (current == (int)songOrder) @@ -218,10 +214,12 @@ playlist::DeleteInternal(PlayerControl &pc, if (current >= 0 && !paused) /* play the song after the deleted one */ PlayOrder(pc, current); - else - /* no songs left to play, stop playback - completely */ - Stop(pc); + else { + /* stop the player */ + + pc.Stop(); + playing = false; + } *queued_p = nullptr; } else if (current == (int)songOrder) |