diff options
Diffstat (limited to 'src/output_thread.c')
-rw-r--r-- | src/output_thread.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/output_thread.c b/src/output_thread.c index 21096eb04..ec5fc5b31 100644 --- a/src/output_thread.c +++ b/src/output_thread.c @@ -641,8 +641,13 @@ static gpointer audio_output_task(gpointer arg) case AO_COMMAND_CANCEL: ao->chunk = NULL; - if (ao->open) + + if (ao->open) { + g_mutex_unlock(ao->mutex); ao_plugin_cancel(ao->plugin, ao->data); + g_mutex_lock(ao->mutex); + } + ao_command_finished(ao); /* the player thread will now clear our music |