mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-01 22:58:50 -04:00
gstpipewiresrc: break out of wait_started() also on STATE_UNCONNECTED
When the session manager sends an error to the client, it typically also destroys the node after the error, which causes the stream to go to STATE_UNCONNECTED via proxy_removed(). In that case, make sure we exit the loop early, otherwise it will take 30 seconds to unblock gst_element_set_state()
This commit is contained in:
parent
a852b979b6
commit
7465175ad0
1 changed files with 3 additions and 4 deletions
|
|
@ -783,10 +783,9 @@ wait_started (GstPipeWireSrc *this)
|
||||||
GST_DEBUG_OBJECT (this, "waiting for started signal, state now %s",
|
GST_DEBUG_OBJECT (this, "waiting for started signal, state now %s",
|
||||||
pw_stream_state_as_string (state));
|
pw_stream_state_as_string (state));
|
||||||
|
|
||||||
if (state == PW_STREAM_STATE_ERROR)
|
if (state == PW_STREAM_STATE_ERROR ||
|
||||||
break;
|
state == PW_STREAM_STATE_UNCONNECTED ||
|
||||||
|
this->flushing) {
|
||||||
if (this->flushing) {
|
|
||||||
state = PW_STREAM_STATE_ERROR;
|
state = PW_STREAM_STATE_ERROR;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue