From 9c0f20c6b00e9b2ec53f9ec371469f519fdaa3ea Mon Sep 17 00:00:00 2001 From: baldurk Date: Wed, 31 Aug 2016 15:14:11 +0200 Subject: [PATCH] Take parameter as const to emphasise that it's read-only --- renderdoc/driver/vulkan/vk_manager.cpp | 20 +++++++++++++++++--- renderdoc/driver/vulkan/vk_manager.h | 2 +- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/renderdoc/driver/vulkan/vk_manager.cpp b/renderdoc/driver/vulkan/vk_manager.cpp index 779f0d613..c23af01b5 100644 --- a/renderdoc/driver/vulkan/vk_manager.cpp +++ b/renderdoc/driver/vulkan/vk_manager.cpp @@ -199,7 +199,7 @@ void VulkanResourceManager::RecordSingleBarrier(vector > &states, - map &layouts, + const map &layouts, uint32_t numBarriers, const VkImageMemoryBarrier *barriers) { TRDBG("Recording %u barriers", numBarriers); @@ -218,10 +218,24 @@ void VulkanResourceManager::RecordBarriers(vectorsecond.levelCount - t.subresourceRange.baseMipLevel; + else + nummips = 1; + } + if(numslices == VK_REMAINING_ARRAY_LAYERS) - numslices = layouts[id].layerCount - t.subresourceRange.baseArrayLayer; + { + if(it != layouts.end()) + numslices = it->second.layerCount - t.subresourceRange.baseArrayLayer; + else + numslices = 1; + } RecordSingleBarrier(states, id, t, nummips, numslices); } diff --git a/renderdoc/driver/vulkan/vk_manager.h b/renderdoc/driver/vulkan/vk_manager.h index 222de2196..ac43ee0c0 100644 --- a/renderdoc/driver/vulkan/vk_manager.h +++ b/renderdoc/driver/vulkan/vk_manager.h @@ -105,7 +105,7 @@ public: const SrcBarrierType &t, uint32_t nummips, uint32_t numslices); void RecordBarriers(vector > &states, - map &layouts, uint32_t numBarriers, + const map &layouts, uint32_t numBarriers, const VkImageMemoryBarrier *barriers); void MergeBarriers(vector > &dststates,