summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHÃ¥vard Graff <havard.graff@tandberg.com>2008-12-01 17:54:58 -0500
committerEdward Hervey <bilboed@bilboed.com>2009-02-21 17:48:56 +0100
commit272f888d9c3111862346fd2b009833782526ef27 (patch)
tree2539b78b9cc5c9b2594452d30c35a1b82549efc6
parent4749d03a1d44dbce4ed4e7f84e1807b91c3974d3 (diff)
[MOVED FROM GST-P-FARSIGHT] Fix some more leaks
-rw-r--r--gst/rtpmux/gstrtpdtmfmux.c4
-rw-r--r--gst/rtpmux/gstrtpmux.c6
2 files changed, 8 insertions, 2 deletions
diff --git a/gst/rtpmux/gstrtpdtmfmux.c b/gst/rtpmux/gstrtpdtmfmux.c
index 84c53ad5f..ea3e1fd41 100644
--- a/gst/rtpmux/gstrtpdtmfmux.c
+++ b/gst/rtpmux/gstrtpdtmfmux.c
@@ -172,8 +172,10 @@ gst_rtp_dtmf_mux_chain (GstPad * pad, GstBuffer * buffer)
GST_OBJECT_UNLOCK (mux);
if (parent_class->chain_func)
ret = parent_class->chain_func (pad, buffer);
- else
+ else {
+ gst_buffer_unref (buffer);
ret = GST_FLOW_ERROR;
+ }
}
gst_object_unref (mux);
diff --git a/gst/rtpmux/gstrtpmux.c b/gst/rtpmux/gstrtpmux.c
index ba7243e1d..34b9fd82e 100644
--- a/gst/rtpmux/gstrtpmux.c
+++ b/gst/rtpmux/gstrtpmux.c
@@ -104,6 +104,8 @@ static void gst_rtp_mux_set_property (GObject * object, guint prop_id,
static void gst_rtp_mux_get_property (GObject * object, guint prop_id,
GValue * value, GParamSpec * pspec);
+static gboolean gst_rtp_mux_src_event (GstPad * pad, GstEvent * event);
+
static GstElementClass *parent_class = NULL;
GType
@@ -211,6 +213,7 @@ static gboolean gst_rtp_mux_src_event (GstPad * pad,
break;
case GST_ITERATOR_RESYNC:
gst_iterator_resync (iter);
+ result = FALSE;
break;
case GST_ITERATOR_ERROR:
GST_WARNING_OBJECT (rtp_mux, "Error iterating sinkpads");
@@ -219,7 +222,8 @@ static gboolean gst_rtp_mux_src_event (GstPad * pad,
break;
}
}
-
+ gst_iterator_free (iter);
+ gst_object_unref (rtp_mux);
gst_event_unref (event);
return result;