From b18483a5630294bae307efad411f0e53b6c3657c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Manuel=20J=C3=A1quez=20Leal?= Date: Tue, 5 Dec 2023 12:24:01 +0100 Subject: [PATCH] vulkan: sink references at instantiation Part-of: --- .../gst-plugins-bad/gst-libs/gst/vulkan/gstvkoperation.c | 8 +++++++- .../gst-plugins-bad/gst-libs/gst/vulkan/gstvktrash.c | 7 ++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvkoperation.c b/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvkoperation.c index d376c6cfa1..710983385e 100644 --- a/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvkoperation.c +++ b/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvkoperation.c @@ -1438,8 +1438,14 @@ gst_vulkan_operation_pipeline_barrier2 (GstVulkanOperation * self, GstVulkanOperation * gst_vulkan_operation_new (GstVulkanCommandPool * cmd_pool) { + GstVulkanOperation *self; + g_return_val_if_fail (GST_IS_VULKAN_COMMAND_POOL (cmd_pool), NULL); - return g_object_new (GST_TYPE_VULKAN_OPERATION, "command-pool", cmd_pool, + self = g_object_new (GST_TYPE_VULKAN_OPERATION, "command-pool", cmd_pool, NULL); + + gst_object_ref_sink (self); + + return self; } diff --git a/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvktrash.c b/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvktrash.c index a5c38ccaa4..c7a0314604 100644 --- a/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvktrash.c +++ b/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvktrash.c @@ -532,7 +532,12 @@ gst_vulkan_trash_fence_list_init (GstVulkanTrashFenceList * trash_list) GstVulkanTrashList * gst_vulkan_trash_fence_list_new (void) { - return g_object_new (gst_vulkan_trash_fence_list_get_type (), NULL); + GstVulkanTrashList *ret; + + ret = g_object_new (gst_vulkan_trash_fence_list_get_type (), NULL); + gst_object_ref_sink (ret); + + return ret; } GST_DEFINE_MINI_OBJECT_TYPE (GstVulkanTrash, gst_vulkan_trash);