zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 24d260363f7130bd1a82a7aa07f123707c5de447 (tree)
parent 7c718fc72e23130b3093ccec7d644ee94017f3d6
Author: Andrew Kelley <andrew@ziglang.org>
Date:   Sun, 19 Apr 2026 12:45:35 -0700

configurer: fix bad serialization of strings in run args

Diffstat:
Mlib/compiler/Maker/ScannedConfig.zig | 5+++++
Mlib/compiler/configurer.zig | 18+++++++++---------
2 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/lib/compiler/Maker/ScannedConfig.zig b/lib/compiler/Maker/ScannedConfig.zig @@ -74,6 +74,11 @@ fn printValue(sc: *const ScannedConfig, s: *Serializer, comptime Field: type, fi Configuration.MaxRss => { try s.value(field_value.toBytes(), .{}); }, + Configuration.Step.Run.Arg.Index => { + var sub_struct = try s.beginStruct(.{}); + try printStruct(sc, &sub_struct, Configuration.Step.Run.Arg, field_value.get(c)); + try sub_struct.end(); + }, else => switch (@typeInfo(Field)) { .int => try s.int(field_value), .pointer => |info| switch (info.size) { diff --git a/lib/compiler/configurer.zig b/lib/compiler/configurer.zig @@ -376,7 +376,7 @@ const Serialize = struct { .generated = false, .dep_file = false, }, - .prefix = .{ .value = try s.addOptionalString(a.prefix) }, + .prefix = .{ .value = if (a.prefix.len != 0) try wc.addString(a.prefix) else null }, .suffix = .{ .value = null }, .basename = .{ .value = null }, .path = .{ .value = null }, @@ -394,7 +394,7 @@ const Serialize = struct { .generated = false, .dep_file = false, }, - .prefix = .{ .value = try s.addOptionalString(a.prefix) }, + .prefix = .{ .value = if (a.prefix.len != 0) try wc.addString(a.prefix) else null }, .suffix = .{ .value = null }, .basename = .{ .value = null }, .path = .{ .value = try addLazyPath(s, a.lazy_path) }, @@ -412,7 +412,7 @@ const Serialize = struct { .generated = false, .dep_file = false, }, - .prefix = .{ .value = try addOptionalString(s, a.prefix) }, + .prefix = .{ .value = if (a.prefix.len != 0) try wc.addString(a.prefix) else null }, .suffix = .{ .value = try addOptionalString(s, a.suffix) }, .basename = .{ .value = null }, .path = .{ .value = try addLazyPath(s, a.lazy_path) }, @@ -430,7 +430,7 @@ const Serialize = struct { .generated = false, .dep_file = false, }, - .prefix = .{ .value = try addOptionalString(s, a.prefix) }, + .prefix = .{ .value = if (a.prefix.len != 0) try wc.addString(a.prefix) else null }, .suffix = .{ .value = null }, .basename = .{ .value = null }, .path = .{ .value = try addLazyPath(s, a.lazy_path) }, @@ -448,7 +448,7 @@ const Serialize = struct { .generated = false, .dep_file = false, }, - .prefix = .{ .value = try addOptionalString(s, a) }, + .prefix = .{ .value = try wc.addString(a) }, .suffix = .{ .value = null }, .basename = .{ .value = null }, .path = .{ .value = null }, @@ -466,9 +466,9 @@ const Serialize = struct { .generated = true, .dep_file = false, }, - .prefix = .{ .value = try addOptionalString(s, a.prefix) }, + .prefix = .{ .value = if (a.prefix.len != 0) try wc.addString(a.prefix) else null }, .suffix = .{ .value = null }, - .basename = .{ .value = try addOptionalString(s, a.basename) }, + .basename = .{ .value = if (a.basename.len != 0) try wc.addString(a.basename) else null }, .path = .{ .value = null }, .producer = .{ .value = null }, .generated = .{ .value = a.generated_file }, @@ -484,9 +484,9 @@ const Serialize = struct { .generated = true, .dep_file = false, }, - .prefix = .{ .value = try addOptionalString(s, a.prefix) }, + .prefix = .{ .value = if (a.prefix.len != 0) try wc.addString(a.prefix) else null }, .suffix = .{ .value = null }, - .basename = .{ .value = try addOptionalString(s, a.basename) }, + .basename = .{ .value = if (a.basename.len != 0) try wc.addString(a.basename) else null }, .path = .{ .value = null }, .producer = .{ .value = null }, .generated = .{ .value = a.generated_file },