PlaylistEdit: don't interrupt playback when current song gets deleted

This commit is contained in:
Weng Xuetian 2014-04-09 23:10:14 +02:00 committed by Max Kellermann
parent ce18c36ed9
commit 3a4e667078
2 changed files with 9 additions and 10 deletions

1
NEWS
View File

@ -3,6 +3,7 @@ ver 0.18.10 (not yet released)
- ffmpeg: fix seeking bug
- ffmpeg: handle unknown stream start time
- gme: fix memory leak
* don't interrupt playback when current song gets deleted
ver 0.18.9 (2014/03/02)
* protocol

View File

@ -234,12 +234,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)
@ -248,10 +244,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)