From ed34ed5b3d793cad6d773e8cc33b7a7433f9110f Mon Sep 17 00:00:00 2001 From: Mark Nauwelaerts Date: Wed, 20 Jun 2012 12:17:37 +0200 Subject: [PATCH] mpegtsmux: fix value handling in pad iteration --- gst/mpegtsmux/mpegtsmux.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gst/mpegtsmux/mpegtsmux.c b/gst/mpegtsmux/mpegtsmux.c index 7572d1e65e..e43d342d11 100644 --- a/gst/mpegtsmux/mpegtsmux.c +++ b/gst/mpegtsmux/mpegtsmux.c @@ -866,7 +866,6 @@ mpegtsmux_src_event (GstPad * pad, GstObject * parent, GstEvent * event) done = FALSE; while (!done) { gboolean res = FALSE, tmp; - g_value_reset (&sinkpad_value); iter_ret = gst_iterator_next (iter, &sinkpad_value); sinkpad = g_value_get_object (&sinkpad_value); @@ -881,7 +880,6 @@ mpegtsmux_src_event (GstPad * pad, GstObject * parent, GstEvent * event) GST_INFO_OBJECT (mux, "result %d", tmp); /* succeed if at least one pad succeeds */ res |= tmp; - gst_object_unref (sinkpad); break; case GST_ITERATOR_ERROR: done = TRUE; @@ -889,8 +887,9 @@ mpegtsmux_src_event (GstPad * pad, GstObject * parent, GstEvent * event) case GST_ITERATOR_RESYNC: break; } + g_value_reset (&sinkpad_value); } - g_value_reset (&sinkpad_value); + g_value_unset (&sinkpad_value); gst_iterator_free (iter); break; }