Merge pull request #2090 from lightpanda-io/rc_assertion

add assertion on RC (to catch release overflow)
This commit is contained in:
Karl Seguin
2026-04-07 08:38:02 +08:00
committed by GitHub

View File

@@ -249,9 +249,7 @@ pub fn RC(comptime T: type) type {
}
pub fn release(self: *@This(), value: anytype, session: *Session) void {
if (comptime IS_DEBUG) {
std.debug.assert(self._refs > 0);
}
assert(self._refs > 0, "release overflow", .{ .type = @typeName(@TypeOf(value)) });
const refs = self._refs - 1;
self._refs = refs;