decoder/Plugin: allow scan_{file,stream}() to throw

Bug #915 is about an I/O exception thrown where none was allowed,
leading to crash via std::terminate().  However, instead of catching
and logging the error inside the decoder plugin, it should be able to
propagate the I/O error to the MPD core, so MPD can avoid trying other
decoder plugins.

Closes https://github.com/MusicPlayerDaemon/MPD/issues/915
This commit is contained in:
Max Kellermann
2020-07-06 13:36:22 +02:00
parent daefc61aa4
commit bfdf13dca3
19 changed files with 90 additions and 58 deletions

2
NEWS
View File

@@ -7,6 +7,8 @@ ver 0.21.25 (not yet released)
* decoder
- opus: apply pre-skip and end trimming
- opus: fix memory leak
- opus: fix crash bug
- vorbis: fix crash bug
* output
- osx: improve sample rate selection
- osx: fix noise while stopping