From 9332b1355ee75e5b24607bd2c7ef1667a8a4ae82 Mon Sep 17 00:00:00 2001 From: egrs Date: Fri, 6 Mar 2026 09:37:55 +0100 Subject: [PATCH] initialize all App fields after allocator.create Same pattern as 3dea554e (mcp/Server.zig): allocator.create returns undefined memory, and struct field defaults (shutdown: bool = false) are not applied when fields are set individually. Use self.* = .{...} to ensure all fields including defaults are initialized. --- src/App.zig | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/App.zig b/src/App.zig index bb797ec5..2d930fd6 100644 --- a/src/App.zig +++ b/src/App.zig @@ -47,10 +47,17 @@ pub fn init(allocator: Allocator, config: *const Config) !*App { const app = try allocator.create(App); errdefer allocator.destroy(app); - app.config = config; - app.allocator = allocator; - - app.robots = RobotStore.init(allocator); + app.* = .{ + .config = config, + .allocator = allocator, + .robots = RobotStore.init(allocator), + .http = undefined, + .platform = undefined, + .snapshot = undefined, + .app_dir_path = undefined, + .telemetry = undefined, + .arena_pool = undefined, + }; app.http = try Http.init(allocator, &app.robots, config); errdefer app.http.deinit();