diff --git a/pcsx2/GS/Renderers/Metal/GSDeviceMTL.mm b/pcsx2/GS/Renderers/Metal/GSDeviceMTL.mm index 1f8d6813e5e45..b1a73bbfa55aa 100644 --- a/pcsx2/GS/Renderers/Metal/GSDeviceMTL.mm +++ b/pcsx2/GS/Renderers/Metal/GSDeviceMTL.mm @@ -913,7 +913,7 @@ static void setFnConstantI(MTLFunctionConstantValues* fc, unsigned int value, GS m_texture_download_buf = MRCTransfer([m_dev.dev newBufferWithLength:size options:MTLResourceStorageModeShared]); pxAssertRel(m_texture_download_buf, "Failed to allocate download buffer (out of memory?)"); - id cmdbuf = GetRenderCmdBuf(); + MRCOwned> cmdbuf = MRCRetain(GetRenderCmdBuf()); [cmdbuf pushDebugGroup:@"DownloadTexture"]; id encoder = [cmdbuf blitCommandEncoder]; [encoder copyFromTexture:msrc->GetTexture()