From 707edac523977eafcd26b20736ca0a07eab6ed25 Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 22 Dec 2022 16:21:54 +0000 Subject: [PATCH] Check that memory allocation succeeded before mapping memory * This fixes a potential crash if we allocate memory then map it immediately without checking --- renderdoc/driver/vulkan/vk_common.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/renderdoc/driver/vulkan/vk_common.cpp b/renderdoc/driver/vulkan/vk_common.cpp index a5eb99db9..b7bcb418a 100644 --- a/renderdoc/driver/vulkan/vk_common.cpp +++ b/renderdoc/driver/vulkan/vk_common.cpp @@ -302,6 +302,12 @@ void *GPUBuffer::Map(uint32_t *bindoffset, VkDeviceSize usedsize) mapoffset = offset; + if(mem == VK_NULL_HANDLE) + { + RDCERR("Manually reporting failed memory map with no memory"); + m_pDriver->CheckVkResult(VK_ERROR_MEMORY_MAP_FAILED); + } + void *ptr = NULL; VkResult vkr = m_pDriver->vkMapMemory(device, mem, offset, size, 0, (void **)&ptr); m_pDriver->CheckVkResult(vkr);