aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2014-08-29 12:44:54 +0200
committerMax Kellermann <max@duempel.org>2014-08-29 13:20:58 +0200
commitca252804c6bbba163fe00d660f47ca4856e4874e (patch)
treece195df1192436d70d46ecfb2a190b191f070215 /src/decoder
parent7c25d83f1cc4c7db2d2d3f4506525dd056b885e8 (diff)
downloadmpd-ca252804c6bbba163fe00d660f47ca4856e4874e.tar.gz
mpd-ca252804c6bbba163fe00d660f47ca4856e4874e.tar.xz
mpd-ca252804c6bbba163fe00d660f47ca4856e4874e.zip
DecoderControl: use SignedSongTime for the song duration
Diffstat (limited to '')
-rw-r--r--src/decoder/DecoderAPI.cxx4
-rw-r--r--src/decoder/DecoderControl.hxx2
2 files changed, 4 insertions, 2 deletions
diff --git a/src/decoder/DecoderAPI.cxx b/src/decoder/DecoderAPI.cxx
index f34894b6a..bccd46b17 100644
--- a/src/decoder/DecoderAPI.cxx
+++ b/src/decoder/DecoderAPI.cxx
@@ -59,7 +59,9 @@ decoder_initialized(Decoder &decoder,
dc.out_audio_format = getOutputAudioFormat(audio_format);
dc.seekable = seekable;
- dc.total_time = total_time;
+ dc.total_time = total_time > 0
+ ? SignedSongTime::FromS(total_time)
+ : SignedSongTime::Negative();
FormatDebug(decoder_domain, "audio_format=%s, seekable=%s",
audio_format_to_string(dc.in_audio_format, &af_string),
diff --git a/src/decoder/DecoderControl.hxx b/src/decoder/DecoderControl.hxx
index d1a55e7b3..ed2b8c538 100644
--- a/src/decoder/DecoderControl.hxx
+++ b/src/decoder/DecoderControl.hxx
@@ -142,7 +142,7 @@ struct DecoderControl {
*/
SongTime end_time;
- float total_time;
+ SignedSongTime total_time;
/** the #MusicChunk allocator */
MusicBuffer *buffer;