mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-26 02:00:33 +00:00
discoverer: fix structure leak
I hit the 'misc' one, but let's also make sure the topology one get freed as well, though I do not know if this can happen twice.
This commit is contained in:
parent
1a8ee4536c
commit
ab7e72ad70
1 changed files with 4 additions and 0 deletions
|
@ -1160,8 +1160,12 @@ handle_message (GstDiscoverer * dc, GstMessage * msg)
|
||||||
GST_DEBUG_OBJECT (GST_MESSAGE_SRC (msg),
|
GST_DEBUG_OBJECT (GST_MESSAGE_SRC (msg),
|
||||||
"Setting result to MISSING_PLUGINS");
|
"Setting result to MISSING_PLUGINS");
|
||||||
dc->priv->current_info->result = GST_DISCOVERER_MISSING_PLUGINS;
|
dc->priv->current_info->result = GST_DISCOVERER_MISSING_PLUGINS;
|
||||||
|
if (dc->priv->current_info->misc)
|
||||||
|
gst_structure_free (dc->priv->current_info->misc);
|
||||||
dc->priv->current_info->misc = gst_structure_copy (msg->structure);
|
dc->priv->current_info->misc = gst_structure_copy (msg->structure);
|
||||||
} else if (sttype == _STREAM_TOPOLOGY_QUARK) {
|
} else if (sttype == _STREAM_TOPOLOGY_QUARK) {
|
||||||
|
if (dc->priv->current_topology)
|
||||||
|
gst_structure_free (dc->priv->current_topology);
|
||||||
dc->priv->current_topology = gst_structure_copy (msg->structure);
|
dc->priv->current_topology = gst_structure_copy (msg->structure);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue