summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarmjit Mahil <Karmjit.Mahil@imgtec.com>2023-05-04 16:37:28 +0100
committerMarge Bot <emma+marge@anholt.net>2023-05-16 18:09:03 +0000
commitbac048e1dfed0ddfa7d95e55565d0ac486997b9b (patch)
treed00f65ab69842395d025552c8742805209c29cc3
parent7cb77cb089cfa38c06dfaaed694af14178f70601 (diff)
downloadmesa-bac048e1dfed0ddfa7d95e55565d0ac486997b9b.tar.gz
pvr: Add missing NULL checks in some vkDestroy...() functions
Seems like `dEQP-VK.api.null_handle.destroy_device` was already passing but let's add the null check in case of future changes which might not accept NULL. Fixes: dEQP-VK.api.null_handle.destroy_descriptor_set_layout dEQP-VK.api.null_handle.destroy_pipeline_layout dEQP-VK.api.null_handle.destroy_query_pool Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22918>
-rw-r--r--src/imagination/vulkan/pvr_descriptor_set.c6
-rw-r--r--src/imagination/vulkan/pvr_device.c3
-rw-r--r--src/imagination/vulkan/pvr_query.c3
3 files changed, 12 insertions, 0 deletions
diff --git a/src/imagination/vulkan/pvr_descriptor_set.c b/src/imagination/vulkan/pvr_descriptor_set.c
index 57b84c395af..1855876839c 100644
--- a/src/imagination/vulkan/pvr_descriptor_set.c
+++ b/src/imagination/vulkan/pvr_descriptor_set.c
@@ -675,6 +675,9 @@ void pvr_DestroyDescriptorSetLayout(VkDevice _device,
PVR_FROM_HANDLE(pvr_descriptor_set_layout, layout, _set_layout);
PVR_FROM_HANDLE(pvr_device, device, _device);
+ if (!layout)
+ return;
+
pvr_descriptor_set_layout_free(device, pAllocator, layout);
}
@@ -1031,6 +1034,9 @@ void pvr_DestroyPipelineLayout(VkDevice _device,
PVR_FROM_HANDLE(pvr_device, device, _device);
PVR_FROM_HANDLE(pvr_pipeline_layout, layout, _pipelineLayout);
+ if (!layout)
+ return;
+
vk_object_free(&device->vk, pAllocator, layout);
}
diff --git a/src/imagination/vulkan/pvr_device.c b/src/imagination/vulkan/pvr_device.c
index 4b56942f58f..706f99fa386 100644
--- a/src/imagination/vulkan/pvr_device.c
+++ b/src/imagination/vulkan/pvr_device.c
@@ -1960,6 +1960,9 @@ void pvr_DestroyDevice(VkDevice _device,
{
PVR_FROM_HANDLE(pvr_device, device, _device);
+ if (!device)
+ return;
+
pvr_robustness_buffer_finish(device);
pvr_spm_finish_scratch_buffer_store(device);
pvr_queues_destroy(device);
diff --git a/src/imagination/vulkan/pvr_query.c b/src/imagination/vulkan/pvr_query.c
index b3b48bd3f46..66fcbf017ea 100644
--- a/src/imagination/vulkan/pvr_query.c
+++ b/src/imagination/vulkan/pvr_query.c
@@ -115,6 +115,9 @@ void pvr_DestroyQueryPool(VkDevice _device,
PVR_FROM_HANDLE(pvr_query_pool, pool, queryPool);
PVR_FROM_HANDLE(pvr_device, device, _device);
+ if (!pool)
+ return;
+
pvr_bo_free(device, pool->availability_buffer);
pvr_bo_free(device, pool->result_buffer);