From 0784988a15bfd8a7a8c9f4e7395b4f0870381694 Mon Sep 17 00:00:00 2001 From: Egor Yusov Date: Wed, 30 May 2018 09:21:50 -0700 Subject: Fixed issues with VulkanRingBuffer not moving vulkan memory object --- .../GraphicsEngineVulkan/include/VulkanDynamicHeap.h | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'Graphics/GraphicsEngineVulkan') diff --git a/Graphics/GraphicsEngineVulkan/include/VulkanDynamicHeap.h b/Graphics/GraphicsEngineVulkan/include/VulkanDynamicHeap.h index 791afbf9..a36a124a 100644 --- a/Graphics/GraphicsEngineVulkan/include/VulkanDynamicHeap.h +++ b/Graphics/GraphicsEngineVulkan/include/VulkanDynamicHeap.h @@ -56,10 +56,11 @@ public: VulkanRingBuffer(size_t MaxSize, IMemoryAllocator &Allocator, RenderDeviceVkImpl* pDeviceVk); VulkanRingBuffer(VulkanRingBuffer&& rhs)noexcept : - RingBuffer(std::move(rhs)), - m_pDeviceVk(rhs.m_pDeviceVk), - m_VkBuffer(std::move(rhs.m_VkBuffer)), - m_CPUAddress(rhs.m_CPUAddress) + RingBuffer (std::move(rhs)), + m_pDeviceVk (rhs.m_pDeviceVk), + m_VkBuffer (std::move(rhs.m_VkBuffer)), + m_BufferMemory(std::move(rhs.m_BufferMemory)), + m_CPUAddress (rhs.m_CPUAddress) { rhs.m_CPUAddress = nullptr; } @@ -71,9 +72,10 @@ public: Destroy(); static_cast(*this) = std::move(rhs); - m_pDeviceVk = rhs.m_pDeviceVk; - m_VkBuffer = std::move(rhs.m_VkBuffer); - m_CPUAddress = rhs.m_CPUAddress; + m_pDeviceVk = rhs.m_pDeviceVk; + m_VkBuffer = std::move(rhs.m_VkBuffer); + m_BufferMemory = std::move(rhs.m_BufferMemory); + m_CPUAddress = rhs.m_CPUAddress; rhs.m_CPUAddress = nullptr; return *this; -- cgit v1.2.3