[pull] master from MusicPlayerDaemon:master - #113
Merged
Conversation
SongEnumerator::NextSong() can throw while reading a remote playlist. The provider helpers are called by functions that already propagate errors, but their noexcept specifiers turn these failures into std::terminate. Remove noexcept so the command handler can report the I/O error.
DispatchSockets() writes postponed_exception from its catch handler without holding the input stream mutex. A synchronous reader can access the same state after it is notified. Acquire the mutex before storing the exception and notifying readers.
AsyncInputStream::Read() waits on caller_cond, but several asynchronous EOF and error paths only notify the InputStream handler. Since bd78307, the synchronous caller is not the installed handler and can remain blocked forever. Wrap InvokeOnAvailable() so every availability notification also wakes caller_cond.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )