From ce6724f788ceac7b95a523d379f27b2d863ed605 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Wed, 27 Jan 2010 18:38:27 +0100 Subject: [PATCH] rtsp-client: implement error_full Implement error_full to avoid some segfaults when the rtspconnection calls it. See #608245 --- gst/rtsp-server/rtsp-client.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/gst/rtsp-server/rtsp-client.c b/gst/rtsp-server/rtsp-client.c index ee76abc9f4..1de0bacce0 100644 --- a/gst/rtsp-server/rtsp-client.c +++ b/gst/rtsp-server/rtsp-client.c @@ -1369,6 +1369,21 @@ error (GstRTSPWatch * watch, GstRTSPResult result, gpointer user_data) return GST_RTSP_OK; } +static GstRTSPResult +error_full (GstRTSPWatch *watch, GstRTSPResult result, + GstRTSPMessage *message, guint id, gpointer user_data) +{ + GstRTSPClient *client = GST_RTSP_CLIENT (user_data); + gchar *str; + + str = gst_rtsp_strresult (result); + GST_INFO ("client %p: received an error %s when handling message %p with id %d", + client, str, message, id); + g_free (str); + + return GST_RTSP_OK; +} + static GstRTSPStatusCode tunnel_start (GstRTSPWatch * watch, gpointer user_data) { @@ -1467,7 +1482,8 @@ static GstRTSPWatchFuncs watch_funcs = { closed, error, tunnel_start, - tunnel_complete + tunnel_complete, + error_full }; /**