From a40b7434758e41297587dcef4a71456e1eb44c09 Mon Sep 17 00:00:00 2001 From: Squibid Date: Thu, 23 Apr 2026 20:52:01 -0400 Subject: [PATCH 1/2] set a field to null if the field is nullable and isn't getting set --- src/lib.zig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib.zig b/src/lib.zig index 41f519b..a5036b6 100644 --- a/src/lib.zig +++ b/src/lib.zig @@ -4990,6 +4990,8 @@ pub const Lua = opaque { @field(result, field.name) = default; } else if (field_type_info != .optional) { return error.LuaTableMissingValue; + } else if (field_type_info == .optional) { + @field(result, field.name) = null; } } else { const stack_size_before_call = lua.getTop(); From bba50e32f717dcb67ab58a663b27b1c0f952e94b Mon Sep 17 00:00:00 2001 From: Squibid Date: Thu, 23 Apr 2026 21:11:22 -0400 Subject: [PATCH 2/2] use the fix from #171 --- src/lib.zig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib.zig b/src/lib.zig index a5036b6..bd0b57f 100644 --- a/src/lib.zig +++ b/src/lib.zig @@ -4990,7 +4990,7 @@ pub const Lua = opaque { @field(result, field.name) = default; } else if (field_type_info != .optional) { return error.LuaTableMissingValue; - } else if (field_type_info == .optional) { + } else { @field(result, field.name) = null; } } else {