mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-23 08:46:40 +00:00
gst/gstregistryxml.c: Cleanups.
Original commit message from CVS: * gst/gstregistryxml.c: (load_feature): Cleanups. Don't use g_object_unref on GstObjects so that we avoid leaks on unsafe glibs.
This commit is contained in:
parent
0a12d6a308
commit
ab0fa35575
2 changed files with 19 additions and 4 deletions
|
@ -1,3 +1,10 @@
|
|||
2005-12-16 Wim Taymans <wim@fluendo.com>
|
||||
|
||||
* gst/gstregistryxml.c: (load_feature):
|
||||
Cleanups.
|
||||
Don't use g_object_unref on GstObjects so that we avoid
|
||||
leaks on unsafe glibs.
|
||||
|
||||
2005-12-16 Wim Taymans <wim@fluendo.com>
|
||||
|
||||
* gst/gstbin.c: (gst_bin_recalc_state):
|
||||
|
|
|
@ -218,16 +218,20 @@ static GstPluginFeature *
|
|||
load_feature (xmlTextReaderPtr reader)
|
||||
{
|
||||
int ret;
|
||||
int depth = xmlTextReaderDepth (reader);
|
||||
gchar *feature_name =
|
||||
(gchar *) xmlTextReaderGetAttribute (reader, BAD_CAST "typename");
|
||||
int depth;
|
||||
gchar *feature_name;
|
||||
GstPluginFeature *feature;
|
||||
GType type;
|
||||
|
||||
depth = xmlTextReaderDepth (reader);
|
||||
feature_name =
|
||||
(gchar *) xmlTextReaderGetAttribute (reader, BAD_CAST "typename");
|
||||
|
||||
GST_DEBUG ("loading feature");
|
||||
|
||||
if (!feature_name)
|
||||
return NULL;
|
||||
|
||||
type = g_type_from_name (feature_name);
|
||||
g_free (feature_name);
|
||||
feature_name = NULL;
|
||||
|
@ -240,7 +244,11 @@ load_feature (xmlTextReaderPtr reader)
|
|||
return NULL;
|
||||
}
|
||||
if (!GST_IS_PLUGIN_FEATURE (feature)) {
|
||||
g_object_unref (feature);
|
||||
/* don't really know what it is */
|
||||
if (GST_IS_OBJECT (feature))
|
||||
gst_object_unref (feature);
|
||||
else
|
||||
g_object_unref (feature);
|
||||
return NULL;
|
||||
}
|
||||
while ((ret = xmlTextReaderRead (reader)) == 1) {
|
||||
|
|
Loading…
Reference in a new issue