|
@@ -306,17 +306,14 @@ void ImGui_ImplMetal_RenderDrawData(ImDrawData* drawData, id<MTLCommandBuffer> c
|
|
|
indexBufferOffset += (size_t)draw_list->IdxBuffer.Size * sizeof(ImDrawIdx);
|
|
|
}
|
|
|
|
|
|
+ __block MetalContext* sharedMetalContext = bd->SharedMetalContext;
|
|
|
[commandBuffer addCompletedHandler:^(id<MTLCommandBuffer>)
|
|
|
{
|
|
|
dispatch_async(dispatch_get_main_queue(), ^{
|
|
|
- ImGui_ImplMetal_Data* bd = ImGui_ImplMetal_GetBackendData();
|
|
|
- if (bd != nullptr)
|
|
|
+ @synchronized(bd->SharedMetalContext.bufferCache)
|
|
|
{
|
|
|
- @synchronized(bd->SharedMetalContext.bufferCache)
|
|
|
- {
|
|
|
- [bd->SharedMetalContext.bufferCache addObject:vertexBuffer];
|
|
|
- [bd->SharedMetalContext.bufferCache addObject:indexBuffer];
|
|
|
- }
|
|
|
+ [sharedMetalContext.bufferCache addObject:vertexBuffer];
|
|
|
+ [sharedMetalContext.bufferCache addObject:indexBuffer];
|
|
|
}
|
|
|
});
|
|
|
}];
|