From 4a26cd8d68ed580649f491254d4cf364c0c2183d Mon Sep 17 00:00:00 2001 From: Karl Seguin Date: Fri, 6 Mar 2026 09:31:51 +0800 Subject: [PATCH] Halt tests (@panic) on ArenaLeak or double-free These are too hard to see during a full test run. --- src/browser/Page.zig | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/browser/Page.zig b/src/browser/Page.zig index aa40ab0b..0376b0f3 100644 --- a/src/browser/Page.zig +++ b/src/browser/Page.zig @@ -357,6 +357,9 @@ pub fn deinit(self: *Page) void { while (it.next()) |value_ptr| { if (value_ptr.count > 0) { log.err(.bug, "ArenaPool Leak", .{ .owner = value_ptr.owner, .type = self._type, .url = self.url }); + if (comptime builtin.is_test) { + @panic("ArenaPool Leak"); + } } } } @@ -429,6 +432,9 @@ pub fn releaseArena(self: *Page, allocator: Allocator) void { const found = self._arena_pool_leak_track.getPtr(@intFromPtr(allocator.ptr)).?; if (found.count != 1) { log.err(.bug, "ArenaPool Double Free", .{ .owner = found.owner, .count = found.count, .type = self._type, .url = self.url }); + if (comptime builtin.is_test) { + @panic("ArenaPool Double Free"); + } return; } found.count = 0;