From 9893b3ac25227495383c796f627aa0a1820d4a8a Mon Sep 17 00:00:00 2001 From: Owen Morgan Date: Fri, 3 May 2024 09:51:10 +0100 Subject: [PATCH] Fix memory leak in vkQueueWaitIdle There was a missing autorelease pool. Fixes #2223. --- MoltenVK/MoltenVK/GPUObjects/MVKQueue.mm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKQueue.mm b/MoltenVK/MoltenVK/GPUObjects/MVKQueue.mm index 79aee679..5abd4854 100644 --- a/MoltenVK/MoltenVK/GPUObjects/MVKQueue.mm +++ b/MoltenVK/MoltenVK/GPUObjects/MVKQueue.mm @@ -145,9 +145,12 @@ VkResult MVKQueue::waitIdle(MVKCommandUse cmdUse) { VkResult rslt = _device->getConfigurationResult(); if (rslt != VK_SUCCESS) { return rslt; } - auto* mtlCmdBuff = getMTLCommandBuffer(cmdUse); - [mtlCmdBuff commit]; - [mtlCmdBuff waitUntilCompleted]; + @autoreleasepool { + auto* mtlCmdBuff = getMTLCommandBuffer(cmdUse); + + [mtlCmdBuff commit]; + [mtlCmdBuff waitUntilCompleted]; + } return VK_SUCCESS; }