MetalDevice: Fix render command encoder leak

and subsequent crash on shutdown.
This commit is contained in:
Stenzek 2023-08-24 18:04:30 +10:00
parent 08acc3144c
commit 1b9e72e3a6

View file

@ -1829,6 +1829,7 @@ void MetalDevice::BeginRenderPass()
m_inline_upload_encoder = nil;
}
@autoreleasepool {
MTLRenderPassDescriptor* desc;
if (!m_current_framebuffer)
{
@ -1842,9 +1843,10 @@ void MetalDevice::BeginRenderPass()
desc = m_current_framebuffer->GetDescriptor();
}
m_render_encoder = [m_render_cmdbuf renderCommandEncoderWithDescriptor:desc];
m_render_encoder = [[m_render_cmdbuf renderCommandEncoderWithDescriptor:desc] retain];
SetInitialEncoderState();
}
}
void MetalDevice::EndRenderPass()
{