diff options
author | Max Kellermann <max@duempel.org> | 2011-07-20 11:33:51 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2011-07-20 11:33:51 +0200 |
commit | d7d717f2ce096015527593f8e163dc3d59cf91fc (patch) | |
tree | 3dbda3e9265ca5a11f1b4fb1277a347d1e5b0856 | |
parent | d1eeed6a5ba0ac35f9dcad6355fc2d18c1860a9f (diff) | |
download | mpd-d7d717f2ce096015527593f8e163dc3d59cf91fc.tar.gz mpd-d7d717f2ce096015527593f8e163dc3d59cf91fc.tar.xz mpd-d7d717f2ce096015527593f8e163dc3d59cf91fc.zip |
playlist_control: don't resume playback when seeking to another song while paused
Use a shortcut in playlist_seek_song(), don't call
playlist_play_order() because that would reset the "paused" state.
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | src/playlist_control.c | 8 |
2 files changed, 6 insertions, 3 deletions
@@ -1,5 +1,6 @@ ver 0.16.4 (2011/??/??) * fix memory leaks +* don't resume playback when seeking to another song while paused * decoder: - ffmpeg: workaround for semantic API change in recent ffmpeg versions - flac: validate the sample rate when scanning the tag diff --git a/src/playlist_control.c b/src/playlist_control.c index ce9bc8442..76066d274 100644 --- a/src/playlist_control.c +++ b/src/playlist_control.c @@ -222,10 +222,12 @@ playlist_seek_song(struct playlist *playlist, unsigned song, float seek_time) playlist->error_count = 0; if (!playlist->playing || (unsigned)playlist->current != i) { - /* seeking is not within the current song - first - start playing the new song */ + /* seeking is not within the current song - prepare + song change */ + + playlist->playing = true; + playlist->current = i; - playlist_play_order(playlist, i); queued = NULL; } |