diff options
author | Max Kellermann <max@duempel.org> | 2010-06-25 20:01:08 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2010-06-25 20:02:55 +0200 |
commit | 1ea10db953f082bee7b40ce3a4d4fd18beeb2a56 (patch) | |
tree | fd4c4a17aa78156782357f66ba9c853c981577b8 | |
parent | eb6188f8c07b45fcc99e0c90486e65bba68cc965 (diff) | |
download | mpd-1ea10db953f082bee7b40ce3a4d4fd18beeb2a56.tar.gz mpd-1ea10db953f082bee7b40ce3a4d4fd18beeb2a56.tar.xz mpd-1ea10db953f082bee7b40ce3a4d4fd18beeb2a56.zip |
playlist/cue: last track ends at end of file
libcue's track_get_length() returns 0 for the last track, because that
information is not available in the CUE sheet. This makes MPD quit
playing the last track immediately. If we set "song.end_ms=0", MPD
will play the track until the end of the song file, which is what we
want.
-rw-r--r-- | src/playlist/cue_playlist_plugin.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/playlist/cue_playlist_plugin.c b/src/playlist/cue_playlist_plugin.c index 75bc54847..b22712bc7 100644 --- a/src/playlist/cue_playlist_plugin.c +++ b/src/playlist/cue_playlist_plugin.c @@ -105,9 +105,6 @@ cue_playlist_read(struct playlist_provider *_playlist) song->start_ms = ((track_get_start(track) + track_get_index(track, 1) - track_get_zero_pre(track)) * 1000) / 75; - song->end_ms = ((track_get_start(track) + track_get_length(track) - - track_get_index(track, 1) - + track_get_zero_pre(track)) * 1000) / 75; /* append pregap of the next track to the end of this one */ track = cd_get_track(playlist->cd, playlist->next); @@ -115,6 +112,8 @@ cue_playlist_read(struct playlist_provider *_playlist) song->end_ms = ((track_get_start(track) + track_get_index(track, 1) - track_get_zero_pre(track)) * 1000) / 75; + else + song->end_ms = 0; return song; } |