vkswapper: keep a reference on the input buffer until present is finished

Otherwise, there may be a very small period of time where the buffer can
be freed while being presented.
This commit is contained in:
Matthew Waters 2020-02-06 16:39:06 +11:00
parent 96a407334d
commit bd31caf0b0

View file

@ -1338,6 +1338,9 @@ reacquire:
gst_vulkan_trash_list_add (priv->trash_list, gst_vulkan_trash_list_add (priv->trash_list,
gst_vulkan_trash_new_free_semaphore (fence, present_semaphore)); gst_vulkan_trash_new_free_semaphore (fence, present_semaphore));
gst_vulkan_trash_list_add (priv->trash_list,
gst_vulkan_trash_new_mini_object_unref (fence,
(GstMiniObject *) gst_buffer_ref (buffer)));
gst_vulkan_fence_unref (fence); gst_vulkan_fence_unref (fence);
fence = NULL; fence = NULL;
} }