Commit 0200175d authored by Edward Hervey's avatar Edward Hervey 🤘 Committed by GStreamer Merge Bot

gloverlay: Fix various issues in allocation handling

* A copy-paste error was getting the information from the wrong
  query
* The 'allocation_meta' GstStructure was being leaked
* No check was done on whether the query existed (to try to set the
  resulting allocation meta on)

CID: 1439872
CID: 1439873
CID: 1439874
CID: 1439875
CID: 1439876
CID: 1439877
parent 51253830
......@@ -188,7 +188,7 @@ gst_gl_overlay_compositor_element_propose_allocation (GstBaseTransform * trans,
decide_query, query))
return FALSE;
if ((width == 0 || height == 0) && decide_query) {
if (decide_query) {
GstCaps *decide_caps;
gst_query_parse_allocation (decide_query, &decide_caps, NULL);
......@@ -204,7 +204,7 @@ gst_gl_overlay_compositor_element_propose_allocation (GstBaseTransform * trans,
if ((width == 0 || height == 0) && query) {
GstCaps *caps;
gst_query_parse_allocation (decide_query, &caps, NULL);
gst_query_parse_allocation (query, &caps, NULL);
if (caps) {
GstVideoInfo vinfo;
......@@ -224,9 +224,12 @@ gst_gl_overlay_compositor_element_propose_allocation (GstBaseTransform * trans,
GST_DEBUG_OBJECT (trans, "Adding overlay composition meta with size %ux%u",
width, height);
gst_query_add_allocation_meta (query,
GST_VIDEO_OVERLAY_COMPOSITION_META_API_TYPE, allocation_meta);
if (allocation_meta) {
if (query)
gst_query_add_allocation_meta (query,
GST_VIDEO_OVERLAY_COMPOSITION_META_API_TYPE, allocation_meta);
gst_structure_free (allocation_meta);
}
return TRUE;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment