+2008-11-27 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ Patch by: 이문형 <iwings at gmail dot com>
+
+ * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_udp):
+ Prevent further read/write actions taken to the connect-failed socket by
+ erroring out quickly. See #562258.
+
2008-11-26 Stefan Kost <ensonic@users.sf.net>
* tests/examples/level/level-example.c:
GST_ELEMENT_WARNING (src, RESOURCE, READ, (NULL),
("The server closed the connection."));
gst_rtsp_connection_close (src->connection);
- gst_rtsp_connection_connect (src->connection, src->ptcp_timeout);
+ res =
+ gst_rtsp_connection_connect (src->connection, src->ptcp_timeout);
+ if (res < 0)
+ goto connect_error;
continue;
default:
goto receive_error;
g_free (str);
return GST_FLOW_ERROR;
}
+connect_error:
+ {
+ gchar *str = gst_rtsp_strresult (res);
+
+ GST_ELEMENT_ERROR (src, RESOURCE, OPEN_READ_WRITE, (NULL),
+ ("Could not connect to server. (%s)", str));
+ g_free (str);
+ return GST_FLOW_ERROR;
+ }
no_protocols:
{
src->cur_protocols = 0;
/* no transport possible, post an error and stop */
- GST_ELEMENT_ERROR (src, RESOURCE, READ, (NULL),
+ GST_ELEMENT_ERROR (src, RESOURCE, OPEN_READ_WRITE, (NULL),
("Could not connect to server, no protocols left"));
return GST_FLOW_ERROR;
}