Commit 20538516 authored by Max Kellermann's avatar Max Kellermann

decoder/audiofile: use decoder_read_full()

Works around WAV stream playback bug, because libaudiofile does not like partial reads (Mantis 0004028).
parent 0759421d
...@@ -4,6 +4,7 @@ ver 0.18.12 (not yet released) ...@@ -4,6 +4,7 @@ ver 0.18.12 (not yet released)
- proxy: fix add/search and other commands with libmpdclient < 2.9 - proxy: fix add/search and other commands with libmpdclient < 2.9
* decoder * decoder
- audiofile: improve responsiveness - audiofile: improve responsiveness
- audiofile: fix WAV stream playback
ver 0.18.11 (2014/05/12) ver 0.18.11 (2014/05/12)
* decoder * decoder
......
...@@ -43,7 +43,12 @@ struct AudioFileInputStream { ...@@ -43,7 +43,12 @@ struct AudioFileInputStream {
InputStream &is; InputStream &is;
size_t Read(void *buffer, size_t size) { size_t Read(void *buffer, size_t size) {
return decoder_read(decoder, is, buffer, size); /* libaudiofile does not like partial reads at all,
and wil abort playback; therefore always force full
reads */
return decoder_read_full(decoder, is, buffer, size)
? size
: 0;
} }
}; };
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment