streamselector: Return a NULL iterator instead of an empty iterator that returns...
authorSebastian Dröge <sebastian.droege@collabora.co.uk>
Thu, 5 May 2011 16:38:53 +0000 (18:38 +0200)
committerSebastian Dröge <sebastian.droege@collabora.co.uk>
Thu, 5 May 2011 16:38:53 +0000 (18:38 +0200)
gst/playback/gststreamselector.c

index 573a90b..4e0ac15 100644 (file)
@@ -635,16 +635,16 @@ gst_stream_selector_pad_iterate_linked_pads (GstPad * pad)
   GstStreamSelector *sel = GST_STREAM_SELECTOR (gst_pad_get_parent (pad));
   GValue value = { 0, };
   GstPad *otherpad;
-  GstIterator *ret;
+  GstIterator *ret = NULL;
 
   otherpad = gst_stream_selector_get_linked_pad (pad, TRUE);
-  g_value_init (&value, GST_TYPE_PAD);
-  g_value_set_object (&value, otherpad);
-  ret = gst_iterator_new_single (GST_TYPE_PAD, &value);
-  g_value_unset (&value);
-
-  if (otherpad)
+  if (otherpad) {
+    g_value_init (&value, GST_TYPE_PAD);
+    g_value_set_object (&value, otherpad);
+    ret = gst_iterator_new_single (GST_TYPE_PAD, &value);
+    g_value_unset (&value);
     gst_object_unref (otherpad);
+  }
   gst_object_unref (sel);
 
   return ret;