Merge branch 'need-to-unlock-loop-when-failing-to-wait-negotiated' into 'master'

pipewiresrc: need to unlock loop when failing to wait negotiated

See merge request pipewire/pipewire!2881
This commit is contained in:
elliot chen 2026-06-26 17:57:26 +08:00
commit 3f00c342a8

View file

@ -1786,8 +1786,11 @@ gst_pipewire_src_change_state (GstElement * element, GstStateChange transition)
* be moved from idle to suspended, which would mean format cleared via
* handle_format_change. Wait for new format to avoid basesrc calling
* create() and get not-negotiated error as response. */
if (wait_negotiated(this) == PW_STREAM_STATE_ERROR)
if (wait_negotiated(this) == PW_STREAM_STATE_ERROR) {
pw_thread_loop_unlock (this->stream->core->loop);
goto open_failed;
}
pw_thread_loop_unlock (this->stream->core->loop);
break;
case GST_STATE_CHANGE_PLAYING_TO_PAUSED: