+2005-11-15 Johan Dahlin <johan@gnome.org>
+
+ * ext/mad/gstid3tag.c (gst_mad_id3_to_tag_list): unset GValues after
+ calling transform.
+ (gst_id3_tag_do_typefind): Unref caps
+
+ * ext/mad/gstmad.c (gst_mad_check_caps_reset): Ditto
+
2005-11-15 Tim-Philipp Müller <tim at centricular dot net>
* ext/mpeg2dec/gstmpeg2dec.c: (handle_slice),
g_value_init (&src, G_TYPE_STRING);
g_value_set_string (&src, (const gchar *) utf8);
+
g_value_init (&dest, tag_type);
if (g_value_transform (&src, &dest)) {
gst_tag_list_add_values (tag_list, GST_TAG_MERGE_APPEND,
GST_WARNING ("Failed to transform tag from string to type '%s'",
g_type_name (tag_type));
}
+ g_value_unset (&src);
+ g_value_unset (&dest);
break;
}
}
SimpleTypeFind *find = (SimpleTypeFind *) data;
if (probability > find->best_probability) {
- gst_caps_replace (&find->caps, gst_caps_copy (caps));
+ GstCaps *copy = gst_caps_copy (caps);
+
+ gst_caps_replace (&find->caps, copy);
+ gst_caps_unref (copy);
find->best_probability = probability;
}
}
"rate", G_TYPE_INT, rate, "channels", G_TYPE_INT, nchannels, NULL);
gst_pad_set_caps (mad->srcpad, caps);
+ gst_caps_unref (caps);
+
mad->caps_set = TRUE; /* set back to FALSE on discont */
mad->channels = nchannels;
mad->rate = rate;