player/Thread: drain outputs at end of song in "single" mode
Without this, the Pause() call would drop the ring buffers and would skip a considerable portion of the end of the song. Closes https://github.com/MusicPlayerDaemon/MPD/issues/824
This commit is contained in:
parent
8d2079482f
commit
32a5bf043b
2
NEWS
2
NEWS
@ -1,4 +1,6 @@
|
||||
ver 0.21.23 (not yet released)
|
||||
* player
|
||||
- drain outputs at end of song in "single" mode
|
||||
|
||||
ver 0.21.22 (2020/04/02)
|
||||
* database
|
||||
|
@ -964,6 +964,12 @@ Player::SongBorder() noexcept
|
||||
if (border_pause) {
|
||||
paused = true;
|
||||
pc.listener.OnBorderPause();
|
||||
|
||||
/* drain all outputs to guarantee the current song is
|
||||
really being played to the end; without this, the
|
||||
Pause() call would drop all ring buffers */
|
||||
pc.outputs.Drain();
|
||||
|
||||
pc.outputs.Pause();
|
||||
idle_add(IDLE_PLAYER);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user