Commit 25686e5b authored by Max Kellermann's avatar Max Kellermann

pulse/output: fix deadlock when resuming the stream

Unlock the mainloop in all code paths.
parent 8d70f808
...@@ -13,6 +13,7 @@ ver 0.16.4 (2011/??/??) ...@@ -13,6 +13,7 @@ ver 0.16.4 (2011/??/??)
* output: * output:
- alsa: fix SIGFPE when alsa announces a period size of 0 - alsa: fix SIGFPE when alsa announces a period size of 0
- httpd: don't warn on client disconnect - httpd: don't warn on client disconnect
- pulse: fix deadlock when resuming the stream
ver 0.16.3 (2011/06/04) ver 0.16.3 (2011/06/04)
......
...@@ -683,8 +683,10 @@ pulse_output_play(void *data, const void *chunk, size_t size, GError **error_r) ...@@ -683,8 +683,10 @@ pulse_output_play(void *data, const void *chunk, size_t size, GError **error_r)
/* unpause if previously paused */ /* unpause if previously paused */
if (pulse_output_stream_is_paused(po) && if (pulse_output_stream_is_paused(po) &&
!pulse_output_stream_pause(po, false, error_r)) !pulse_output_stream_pause(po, false, error_r)) {
pa_threaded_mainloop_unlock(po->mainloop);
return 0; return 0;
}
/* wait until the server allows us to write */ /* wait until the server allows us to write */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment