diff --git a/src/Cafe/HW/Latte/Renderer/Metal/MetalBufferAllocator.cpp b/src/Cafe/HW/Latte/Renderer/Metal/MetalBufferAllocator.cpp index 62d0c093..44d11a3b 100644 --- a/src/Cafe/HW/Latte/Renderer/Metal/MetalBufferAllocator.cpp +++ b/src/Cafe/HW/Latte/Renderer/Metal/MetalBufferAllocator.cpp @@ -222,9 +222,9 @@ void MetalSynchronizedHeapAllocator::CleanupBuffer(MTL::CommandBuffer* latestFin return; // release allocations - for(auto& addr : it->second) + for (auto& addr : it->second) m_chunkedHeap.free(addr); - it = m_releaseQueue.erase(it); + m_releaseQueue.erase(it); } void MetalSynchronizedHeapAllocator::GetStats(uint32& numBuffers, size_t& totalBufferSize, size_t& freeBufferSize) const diff --git a/src/Cafe/HW/Latte/Renderer/Metal/MetalRenderer.cpp b/src/Cafe/HW/Latte/Renderer/Metal/MetalRenderer.cpp index 17a0d86d..19afbf06 100644 --- a/src/Cafe/HW/Latte/Renderer/Metal/MetalRenderer.cpp +++ b/src/Cafe/HW/Latte/Renderer/Metal/MetalRenderer.cpp @@ -1816,7 +1816,6 @@ void MetalRenderer::CommitCommandBuffer() void MetalRenderer::ProcessFinishedCommandBuffers() { // Check for finished command buffers - bool atLeastOneCompleted = false; for (auto it = m_executingCommandBuffers.begin(); it != m_executingCommandBuffers.end();) { auto commandBuffer = *it; @@ -1825,17 +1824,12 @@ void MetalRenderer::ProcessFinishedCommandBuffers() m_memoryManager->CleanupBuffers(commandBuffer); commandBuffer->release(); it = m_executingCommandBuffers.erase(it); - atLeastOneCompleted = true; } else { ++it; } } - - // Invalidate indices if at least one command buffer has completed - if (atLeastOneCompleted) - LatteIndices_invalidateAll(); } bool MetalRenderer::AcquireDrawable(bool mainWindow)