decodebin_next: fix caps and tags leaks
authorGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Thu, 28 Jul 2016 13:44:27 +0000 (15:44 +0200)
committerEdward Hervey <bilboed@bilboed.com>
Wed, 3 Aug 2016 15:49:45 +0000 (17:49 +0200)
The getters are (transfer full).

https://bugzilla.gnome.org/show_bug.cgi?id=769270

tests/examples/decodebin_next/decodebin3.c
tests/examples/decodebin_next/playbin-test.c

index 53a8249..2b36239 100644 (file)
@@ -79,8 +79,8 @@ static void
 dump_collection (GstStreamCollection * collection)
 {
   guint i;
-  const GstTagList *tags;
-  const GstCaps *caps;
+  GstTagList *tags;
+  GstCaps *caps;
 
   for (i = 0; i < gst_stream_collection_get_size (collection); i++) {
     GstStream *stream = gst_stream_collection_get_stream (collection, i);
@@ -94,12 +94,14 @@ dump_collection (GstStreamCollection * collection)
       gchar *caps_str = gst_caps_to_string (caps);
       g_print ("  caps: %s\n", caps_str);
       g_free (caps_str);
+      gst_caps_unref (caps);
     }
 
     tags = gst_stream_get_tags (stream);
     if (tags) {
       g_print ("  tags:\n");
       gst_tag_list_foreach (tags, print_tag_foreach, GUINT_TO_POINTER (3));
+      gst_tag_list_unref (tags);
     }
   }
 }
index 38a328c..f51b1fc 100644 (file)
@@ -73,8 +73,8 @@ static void
 dump_collection (GstStreamCollection * collection)
 {
   guint i;
-  const GstTagList *tags;
-  const GstCaps *caps;
+  GstTagList *tags;
+  GstCaps *caps;
 
   for (i = 0; i < gst_stream_collection_get_size (collection); i++) {
     GstStream *stream = gst_stream_collection_get_stream (collection, i);
@@ -88,12 +88,14 @@ dump_collection (GstStreamCollection * collection)
       gchar *caps_str = gst_caps_to_string (caps);
       g_print ("  caps: %s\n", caps_str);
       g_free (caps_str);
+      gst_caps_unref (caps);
     }
 
     tags = gst_stream_get_tags (stream);
     if (tags) {
       g_print ("  tags:\n");
       gst_tag_list_foreach (tags, print_tag_foreach, GUINT_TO_POINTER (3));
+      gst_tag_list_unref (tags);
     }
   }
 }