example: handle potential memory leak

This commit is contained in:
Robin Voetter
2022-02-02 17:12:13 +01:00
parent 0f496af7e9
commit 7b80166108

View File

@@ -72,7 +72,10 @@ pub const Swapchain = struct {
} }
const swap_images = try initSwapchainImages(gc, handle, surface_format.format, allocator); const swap_images = try initSwapchainImages(gc, handle, surface_format.format, allocator);
errdefer for (swap_images) |si| si.deinit(gc); errdefer {
for (swap_images) |si| si.deinit(gc);
allocator.free(swap_images);
}
var next_image_acquired = try gc.vkd.createSemaphore(gc.dev, &.{ .flags = .{} }, null); var next_image_acquired = try gc.vkd.createSemaphore(gc.dev, &.{ .flags = .{} }, null);
errdefer gc.vkd.destroySemaphore(gc.dev, next_image_acquired, null); errdefer gc.vkd.destroySemaphore(gc.dev, next_image_acquired, null);