MVKSwapchain::signalWhenAvailable() add autoreleasepool around MTLCommandBuffer use.
diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKSwapchain.mm b/MoltenVK/MoltenVK/GPUObjects/MVKSwapchain.mm
index b1a3d34..ff35854 100644
--- a/MoltenVK/MoltenVK/GPUObjects/MVKSwapchain.mm
+++ b/MoltenVK/MoltenVK/GPUObjects/MVKSwapchain.mm
@@ -167,12 +167,14 @@
 		// If signalling through a MTLEvent, use an ephemeral MTLCommandBuffer.
 		// Another option would be to use MTLSharedEvent in MVKSemaphore, but that might
 		// impose unacceptable performance costs to handle this particular case.
-		MVKSemaphore* mvkSem = signaler.first;
-		id<MTLCommandBuffer> mtlCmdBuff = (mvkSem && mvkSem->isUsingMTLEvent()
-										   ? [_device->getQueue()->getMTLCommandQueue() commandBufferWithUnretainedReferences]
-										   : nil);
-		signal(signaler, mtlCmdBuff);
-		[mtlCmdBuff commit];
+		@autoreleasepool {
+			MVKSemaphore* mvkSem = signaler.first;
+			id<MTLCommandBuffer> mtlCmdBuff = (mvkSem && mvkSem->isUsingMTLEvent()
+											   ? [_device->getQueue()->getMTLCommandQueue() commandBufferWithUnretainedReferences]
+											   : nil);
+			signal(signaler, mtlCmdBuff);
+			[mtlCmdBuff commit];
+		}
 
 		_imageAvailability[imageIndex].preSignaled = signaler;
 	} else {