From 7592d5120a118173bff3579c40b69885198de5e3 Mon Sep 17 00:00:00 2001 From: Havard Graff Date: Thu, 1 Oct 2015 11:18:52 +0200 Subject: rtmpsrc: plug memory-leaks https://bugzilla.gnome.org/show_bug.cgi?id=756001 --- ext/rtmp/gstrtmpsrc.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ext/rtmp/gstrtmpsrc.c b/ext/rtmp/gstrtmpsrc.c index b9ecfcfdf..bbed8b043 100644 --- a/ext/rtmp/gstrtmpsrc.c +++ b/ext/rtmp/gstrtmpsrc.c @@ -234,8 +234,11 @@ gst_rtmp_src_uri_set_uri (GstURIHandler * handler, const gchar * uri, GST_ERROR_OBJECT (src, "Failed to parse URI %s", uri); g_set_error (error, GST_URI_ERROR, GST_URI_ERROR_BAD_URI, "Could not parse RTMP URI"); + /* FIXME: we should not be freeing RTMP internals to avoid leaking */ + free (playpath.av_val); return FALSE; } + free (playpath.av_val); src->uri = g_strdup (uri); } @@ -559,7 +562,6 @@ static gboolean gst_rtmp_src_start (GstBaseSrc * basesrc) { GstRTMPSrc *src; - gchar *uri_copy; src = GST_RTMP_SRC (basesrc); @@ -572,13 +574,11 @@ gst_rtmp_src_start (GstBaseSrc * basesrc) src->last_timestamp = 0; src->discont = TRUE; - uri_copy = g_strdup (src->uri); src->rtmp = RTMP_Alloc (); RTMP_Init (src->rtmp); - if (!RTMP_SetupURL (src->rtmp, uri_copy)) { + if (!RTMP_SetupURL (src->rtmp, src->uri)) { GST_ELEMENT_ERROR (src, RESOURCE, OPEN_READ, (NULL), ("Failed to setup URL '%s'", src->uri)); - g_free (uri_copy); RTMP_Free (src->rtmp); src->rtmp = NULL; return FALSE; -- cgit v1.2.1