GNOME Bugzilla – Bug 596159
rtspsrc hangs when connecting over http tunneled rtsp
Last modified: 2009-10-13 09:23:18 UTC
The rtspsrc element sometimes hangs (forever) during connection setup when it uses rtsp tunneled over http. It hangs in gstrtspconnection.c:gst_rtsp_connection_receive(). The problem is that the gst_poll_wait is only supposed to return when it's ok to read from the read socket. However, if some error has occurred on the write socket the poll returns as well. Since there's no check on which descriptor caused the poll to return a read from the read socket is done (resulting in nothing) and then a new poll again. This repeats over and over again.
Created attachment 143874 [details] [review] Patch that fixes problem by checking for error on 'other' socket after poll return.
commit 48a44f470b8aede9010cc09a074dab165c5f576a Author: Patrick Radizi <patrick.radizi at axis.com> Date: Mon Oct 12 15:48:46 2009 +0200 rtsp: handle socket errors gstrtspconnection.c:gst_rtsp_connection_receive() can hang when an error occured on a socekt. Fix this problem by checking for error on 'other' socket after poll return. Fixes #596159