mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-24 02:31:03 +00:00
caps: make _normalize take ownership of input
Make gst_caps_normalize() take ownership of the input so that it can more intelligently decide when to copy or not.
This commit is contained in:
parent
8a76c3269a
commit
67931bfded
2 changed files with 6 additions and 7 deletions
|
@ -1616,13 +1616,15 @@ gst_caps_normalize_foreach (GQuark field_id, const GValue * value, gpointer ptr)
|
|||
|
||||
/**
|
||||
* gst_caps_normalize:
|
||||
* @caps: a #GstCaps to normalize
|
||||
* @caps: (transfer full): a #GstCaps to normalize
|
||||
*
|
||||
* Creates a new #GstCaps that represents the same set of formats as
|
||||
* Returns a #GstCaps that represents the same set of formats as
|
||||
* @caps, but contains no lists. Each list is expanded into separate
|
||||
* @GstStructures.
|
||||
*
|
||||
* Returns: the new #GstCaps
|
||||
* This function takes ownership of @caps.
|
||||
*
|
||||
* Returns: (transfer full): the normalized #GstCaps
|
||||
*/
|
||||
GstCaps *
|
||||
gst_caps_normalize (GstCaps * caps)
|
||||
|
@ -1633,7 +1635,7 @@ gst_caps_normalize (GstCaps * caps)
|
|||
|
||||
g_return_val_if_fail (GST_IS_CAPS (caps), NULL);
|
||||
|
||||
newcaps = _gst_caps_copy (caps);
|
||||
newcaps = gst_caps_make_writable (caps);
|
||||
nf.caps = newcaps;
|
||||
|
||||
for (i = 0; i < gst_caps_get_size (newcaps); i++) {
|
||||
|
|
|
@ -839,7 +839,6 @@ GST_START_TEST (test_normalize)
|
|||
fail_unless (gst_structure_foreach (st, _caps_is_fixed_foreach, NULL));
|
||||
}
|
||||
|
||||
gst_caps_unref (in);
|
||||
gst_caps_unref (out);
|
||||
gst_caps_unref (norm);
|
||||
|
||||
|
@ -858,7 +857,6 @@ GST_START_TEST (test_normalize)
|
|||
fail_unless (gst_structure_foreach (st, _caps_is_fixed_foreach, NULL));
|
||||
}
|
||||
|
||||
gst_caps_unref (in);
|
||||
gst_caps_unref (out);
|
||||
gst_caps_unref (norm);
|
||||
|
||||
|
@ -876,7 +874,6 @@ GST_START_TEST (test_normalize)
|
|||
fail_unless (gst_structure_foreach (st, _caps_is_fixed_foreach, NULL));
|
||||
}
|
||||
|
||||
gst_caps_unref (in);
|
||||
gst_caps_unref (out);
|
||||
gst_caps_unref (norm);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue