• Max Kellermann's avatar
    output_thread: reimplement CANCEL synchronization · 8b0b4ff0
    Max Kellermann authored
    The output thread could hang indefinitely after finishing CANCEL,
    because it could have missed the signal while the output was not
    unlocked in ao_command_finished().
    
    This patch removes the wait() call after CANCEL, and adds the flag
    "allow_play" instead.  While this flag is set, playback is skipped.
    With this flag, there will not be any excess wait() call after the
    pipe has been cleared.
    
    This patch fixes a bug that causes mpd to discontinue playback after
    seeking, due to the race condition described above.
    8b0b4ff0
Name
Last commit
Last update
doc Loading commit data...
m4 Loading commit data...
scripts Loading commit data...
src Loading commit data...
test Loading commit data...
.gitignore Loading commit data...
AUTHORS Loading commit data...
COPYING Loading commit data...
INSTALL Loading commit data...
Makefile.am Loading commit data...
NEWS Loading commit data...
README Loading commit data...
UPGRADING Loading commit data...
autogen.sh Loading commit data...
configure.ac Loading commit data...
valgrind.suppressions Loading commit data...