authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-05-28 16:44:57-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-05-29 06:13:07+02:00
log022851d2f5883e495417408a35aab0645690d9c4
tree9e249d4335d93f44f8edfea6912324e6c65cc544
parent1fb306c56be291cd5dbd038a23705f81d3013114

std.Build.Cache.Path.format: use writeVecAll

makes the function not need the stream to be buffered

1 files changed, 8 insertions(+), 15 deletions(-)

lib/std/Build/Cache/Path.zig+8-15
......@@ -178,22 +178,15 @@ pub fn formatEscapeChar(path: Path, writer: *Io.Writer) Io.Writer.Error!void {
178178
179179pub fn format(self: Path, writer: *Io.Writer) Io.Writer.Error!void {
180180 if (Io.Dir.path.isAbsolute(self.sub_path)) {
181 try writer.writeAll(self.sub_path);
182 return;
181 return writer.writeAll(self.sub_path);
182 } else if (self.root_dir.path) |p| {
183 var bufs: [3][]const u8 = .{ p, Io.Dir.path.sep_str, self.sub_path };
184 return writer.writeVecAll(bufs[0..if (self.sub_path.len > 0) 3 else 1]);
185 } else if (self.sub_path.len > 0) {
186 return writer.writeAll(self.sub_path);
187 } else {
188 return writer.writeByte('.');
183189 }
184 if (self.root_dir.path) |p| {
185 try writer.writeAll(p);
186 if (self.sub_path.len > 0) {
187 try writer.writeAll(Io.Dir.path.sep_str);
188 try writer.writeAll(self.sub_path);
189 }
190 return;
191 }
192 if (self.sub_path.len > 0) {
193 try writer.writeAll(self.sub_path);
194 return;
195 }
196 try writer.writeByte('.');
197190}
198191
199192pub fn eql(self: Path, other: Path) bool {