• Max Kellermann's avatar
    player_thread: check command before waiting during pause · 408d52fe
    Max Kellermann authored
    While paused, the player thread re-locks its mutex and waits for a
    signal.  This is racy: when the command is set while the thread is
    waiting for the lock, it may wait forever.  This patch adds another
    command check before player_wait().
    408d52fe
Name
Last commit
Last update
..
archive Loading commit data...
cue Loading commit data...
decoder Loading commit data...
encoder Loading commit data...
filter Loading commit data...
input Loading commit data...
mixer Loading commit data...
output Loading commit data...
playlist Loading commit data...
ack.h Loading commit data...
aiff.c Loading commit data...
aiff.h Loading commit data...
archive_api.c Loading commit data...
archive_api.h Loading commit data...
archive_internal.h Loading commit data...
archive_list.c Loading commit data...
archive_list.h Loading commit data...
audio.c Loading commit data...
audio.h Loading commit data...
audio_format.h Loading commit data...
audio_parser.c Loading commit data...
audio_parser.h Loading commit data...
buffer.c Loading commit data...
buffer.h Loading commit data...
chunk.c Loading commit data...
chunk.h Loading commit data...
client.c Loading commit data...
client.h Loading commit data...
client_event.c Loading commit data...
client_expire.c Loading commit data...
client_global.c Loading commit data...
client_idle.c Loading commit data...
client_internal.h Loading commit data...
client_list.c Loading commit data...
client_new.c Loading commit data...
client_process.c Loading commit data...
client_read.c Loading commit data...
client_write.c Loading commit data...
cmdline.c Loading commit data...
cmdline.h Loading commit data...
command.c Loading commit data...
command.h Loading commit data...
compress.c Loading commit data...
compress.h Loading commit data...
conf.c Loading commit data...
conf.h Loading commit data...
crossfade.c Loading commit data...
crossfade.h Loading commit data...
daemon.c Loading commit data...
daemon.h Loading commit data...
database.c Loading commit data...
database.h Loading commit data...
dbUtils.c Loading commit data...
dbUtils.h Loading commit data...
decoder_api.c Loading commit data...
decoder_api.h Loading commit data...
decoder_buffer.c Loading commit data...
decoder_buffer.h Loading commit data...
decoder_command.h Loading commit data...
decoder_control.c Loading commit data...
decoder_control.h Loading commit data...
decoder_internal.c Loading commit data...
decoder_internal.h Loading commit data...
decoder_list.c Loading commit data...
decoder_list.h Loading commit data...
decoder_plugin.h Loading commit data...
decoder_thread.c Loading commit data...
decoder_thread.h Loading commit data...
directory.c Loading commit data...
directory.h Loading commit data...
directory_print.c Loading commit data...
directory_print.h Loading commit data...
directory_save.c Loading commit data...
directory_save.h Loading commit data...
dirvec.c Loading commit data...
dirvec.h Loading commit data...
encoder_api.h Loading commit data...
encoder_list.c Loading commit data...
encoder_list.h Loading commit data...
encoder_plugin.h Loading commit data...
event_pipe.c Loading commit data...
event_pipe.h Loading commit data...
exclude.c Loading commit data...
exclude.h Loading commit data...
fifo_buffer.c Loading commit data...
fifo_buffer.h Loading commit data...
filter_internal.h Loading commit data...
filter_plugin.c Loading commit data...
filter_plugin.h Loading commit data...
filter_registry.c Loading commit data...
filter_registry.h Loading commit data...
gcc.h Loading commit data...
icy_metadata.c Loading commit data...
icy_metadata.h Loading commit data...
icy_server.c Loading commit data...
icy_server.h Loading commit data...
idle.c Loading commit data...
idle.h Loading commit data...
inotify_queue.c Loading commit data...
inotify_queue.h Loading commit data...
inotify_source.c Loading commit data...
inotify_source.h Loading commit data...
inotify_update.c Loading commit data...
inotify_update.h Loading commit data...
input_plugin.h Loading commit data...
input_stream.c Loading commit data...
input_stream.h Loading commit data...
listen.c Loading commit data...
listen.h Loading commit data...
locate.c Loading commit data...
locate.h Loading commit data...
log.c Loading commit data...
log.h Loading commit data...
ls.c Loading commit data...
ls.h Loading commit data...
main.c Loading commit data...
main.h Loading commit data...
mapper.c Loading commit data...
mapper.h Loading commit data...
mixer_all.c Loading commit data...
mixer_all.h Loading commit data...
mixer_api.c Loading commit data...
mixer_api.h Loading commit data...
mixer_control.c Loading commit data...
mixer_control.h Loading commit data...
mixer_list.h Loading commit data...
mixer_plugin.h Loading commit data...
mixer_type.c Loading commit data...
mixer_type.h Loading commit data...
normalize.c Loading commit data...
normalize.h Loading commit data...
notify.c Loading commit data...
notify.h Loading commit data...
output_all.c Loading commit data...
output_all.h Loading commit data...
output_api.h Loading commit data...
output_command.c Loading commit data...
output_command.h Loading commit data...
output_control.c Loading commit data...
output_control.h Loading commit data...
output_init.c Loading commit data...
output_internal.h Loading commit data...
output_list.c Loading commit data...
output_list.h Loading commit data...
output_plugin.h Loading commit data...
output_print.c Loading commit data...
output_print.h Loading commit data...
output_state.c Loading commit data...
output_state.h Loading commit data...
output_thread.c Loading commit data...
output_thread.h Loading commit data...
page.c Loading commit data...
page.h Loading commit data...
path.c Loading commit data...
path.h Loading commit data...
pcm_buffer.h Loading commit data...
pcm_byteswap.c Loading commit data...
pcm_byteswap.h Loading commit data...
pcm_channels.c Loading commit data...
pcm_channels.h Loading commit data...
pcm_convert.c Loading commit data...
pcm_convert.h Loading commit data...
pcm_dither.c Loading commit data...
pcm_dither.h Loading commit data...
pcm_format.c Loading commit data...
pcm_format.h Loading commit data...
pcm_mix.c Loading commit data...
pcm_mix.h Loading commit data...
pcm_prng.h Loading commit data...
pcm_resample.c Loading commit data...
pcm_resample.h Loading commit data...
pcm_resample_fallback.c Loading commit data...
pcm_resample_internal.h Loading commit data...
pcm_resample_libsamplerate.c Loading commit data...
pcm_utils.h Loading commit data...
pcm_volume.c Loading commit data...
pcm_volume.h Loading commit data...
permission.c Loading commit data...
permission.h Loading commit data...
pipe.c Loading commit data...
pipe.h Loading commit data...
player_control.c Loading commit data...
player_control.h Loading commit data...
player_thread.c Loading commit data...
player_thread.h Loading commit data...
playlist.c Loading commit data...
playlist.h Loading commit data...
playlist_control.c Loading commit data...
playlist_edit.c Loading commit data...
playlist_global.c Loading commit data...
playlist_internal.h Loading commit data...
playlist_list.c Loading commit data...
playlist_list.h Loading commit data...
playlist_plugin.h Loading commit data...
playlist_print.c Loading commit data...
playlist_print.h Loading commit data...
playlist_queue.c Loading commit data...
playlist_queue.h Loading commit data...
playlist_save.c Loading commit data...
playlist_save.h Loading commit data...
playlist_state.c Loading commit data...
playlist_state.h Loading commit data...
poison.h Loading commit data...
queue.c Loading commit data...
queue.h Loading commit data...
queue_print.c Loading commit data...
queue_print.h Loading commit data...
queue_save.c Loading commit data...
queue_save.h Loading commit data...
replay_gain.c Loading commit data...
replay_gain.h Loading commit data...
riff.c Loading commit data...
riff.h Loading commit data...
sig_handlers.c Loading commit data...
sig_handlers.h Loading commit data...
socket_util.c Loading commit data...
socket_util.h Loading commit data...
song.c Loading commit data...
song.h Loading commit data...
song_print.c Loading commit data...
song_print.h Loading commit data...
song_save.c Loading commit data...
song_save.h Loading commit data...
song_sticker.c Loading commit data...
song_sticker.h Loading commit data...
song_update.c Loading commit data...
songvec.c Loading commit data...
songvec.h Loading commit data...
state_file.c Loading commit data...
state_file.h Loading commit data...
stats.c Loading commit data...
stats.h Loading commit data...
sticker.c Loading commit data...
sticker.h Loading commit data...
sticker_print.c Loading commit data...
sticker_print.h Loading commit data...
stored_playlist.c Loading commit data...
stored_playlist.h Loading commit data...
strset.c Loading commit data...
strset.h Loading commit data...
tag.c Loading commit data...
tag.h Loading commit data...
tag_ape.c Loading commit data...
tag_ape.h Loading commit data...
tag_id3.c Loading commit data...
tag_id3.h Loading commit data...
tag_internal.h Loading commit data...
tag_pool.c Loading commit data...
tag_pool.h Loading commit data...
tag_print.c Loading commit data...
tag_print.h Loading commit data...
tag_save.c Loading commit data...
tag_save.h Loading commit data...
text_file.c Loading commit data...
text_file.h Loading commit data...
text_input_stream.c Loading commit data...
text_input_stream.h Loading commit data...
timer.c Loading commit data...
timer.h Loading commit data...
tokenizer.c Loading commit data...
tokenizer.h Loading commit data...
update.c Loading commit data...
update.h Loading commit data...
update_internal.h Loading commit data...
update_queue.c Loading commit data...
update_remove.c Loading commit data...
update_walk.c Loading commit data...
uri.c Loading commit data...
uri.h Loading commit data...
utils.c Loading commit data...
utils.h Loading commit data...
volume.c Loading commit data...
volume.h Loading commit data...
zeroconf-avahi.c Loading commit data...
zeroconf-bonjour.c Loading commit data...
zeroconf-internal.h Loading commit data...
zeroconf.c Loading commit data...
zeroconf.h Loading commit data...