Commit 30b2abad authored by Miguel Angel Cabrera Moya's avatar Miguel Angel Cabrera Moya Committed by Wim Taymans
Browse files

rtspconnection: not enter in not controllable state unless it is necessary

When closing rtspsrc the state change blocks until the polling in the
connection timeouts. This is because the second time we loop to read a
full message controllable is set to FALSE in the poll group, even though no
message is half read.
This can be avoided by not setting controllable to FALSE the poll group
unless we had begin to read a message.

Fixes #610916
parent 74cc9865
......@@ -2269,7 +2269,9 @@ gst_rtsp_connection_receive (GstRTSPConnection * conn, GstRTSPMessage * message,
if (gst_poll_fd_has_error (conn->fdset, conn->writefd))
goto socket_error;
gst_poll_set_controllable (conn->fdset, FALSE);
/* once we start reading the wait cannot be controlled */
if (builder.state != STATE START)
gst_poll_set_controllable (conn->fdset, FALSE);
}
/* we have a message here */
......
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