From 66a1764d6cf7e519e96e51889aaf942be1eb616d Mon Sep 17 00:00:00 2001 From: CJ van den Berg Date: Wed, 5 Mar 2025 17:49:01 +0100 Subject: [PATCH] fix: stop after removing widget in Widget.remove (fixes ReleaseFast crash) --- src/tui/WidgetList.zig | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/tui/WidgetList.zig b/src/tui/WidgetList.zig index e62b6f3..f9fcdce 100644 --- a/src/tui/WidgetList.zig +++ b/src/tui/WidgetList.zig @@ -93,8 +93,10 @@ pub fn addP(self: *Self, w_: Widget) !*Widget { } pub fn remove(self: *Self, w: Widget) void { - for (self.widgets.items, 0..) |p, i| if (p.widget.ptr == w.ptr) + for (self.widgets.items, 0..) |p, i| if (p.widget.ptr == w.ptr) { self.widgets.orderedRemove(i).widget.deinit(self.allocator); + return; + }; } pub fn remove_all(self: *Self) void {