-
Max Kellermann authored
While libsndfile doesn't like partial reads in the middle of a file (see commit 95ac6071), it allows partial reads at the end of a file. It doesn't pay attention to the file size when issuing a read. Commit ecb67a1e (MPD 0.18.12) was a regression: previously, partial reads at the end of a file were possible, but switching to decoder_read_full() made this an error condition. This way, a portion at the end of each file was lost, leading to corruption with gapless playback (https://github.com/MusicPlayerDaemon/MPD/issues/936). This fix switches to the newly introduced function decoder_read_much(), which does the same as the code before commit ecb67a1e. Closes https://github.com/MusicPlayerDaemon/MPD/issues/936
0aa0ffb6
To find the state of this project's repository at the time of any of these versions, check out
the tags.