Commit 2759173452

Andrew Kelley <andrew@ziglang.org>
2024-05-24 20:58:57
zig build: lock stderr while executing the build runner
1 parent 352dc2c
Changed files (1)
src/main.zig
@@ -5151,7 +5151,12 @@ fn cmdBuild(gpa: Allocator, arena: Allocator, args: []const []const u8) !void {
             child.stdout_behavior = .Inherit;
             child.stderr_behavior = .Inherit;
 
-            const term = try child.spawnAndWait();
+            const term = t: {
+                std.debug.lockStdErr();
+                defer std.debug.unlockStdErr();
+                break :t try child.spawnAndWait();
+            };
+
             switch (term) {
                 .Exited => |code| {
                     if (code == 0) return cleanExit();