authorgravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2024-07-24 15:12:59-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2024-07-25 03:59:30-07:00
log18685e928dcf179271a18cec3d8d16ed0547d3b5
tree0e1ea9db9157dcf9facc600ff65b7032c2203a06
parentf4f5b2bc41e09ed68caf3c839433e44bd9b33249

main: avoid sending an empty file system inputs message

When all compiler inputs are invalid paths, there could be errors yet no valid file system inputs. Closes #20713

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

src/main.zig+8-4
...@@ -4207,13 +4207,17 @@ fn serve(...@@ -4207,13 +4207,17 @@ fn serve(
4207fn serveUpdateResults(s: *Server, comp: *Compilation) !void {4207fn serveUpdateResults(s: *Server, comp: *Compilation) !void {
4208 const gpa = comp.gpa;4208 const gpa = comp.gpa;
42094209
4210 var error_bundle = try comp.getAllErrorsAlloc();
4211 defer error_bundle.deinit(gpa);
4212
4210 if (comp.file_system_inputs) |file_system_inputs| {4213 if (comp.file_system_inputs) |file_system_inputs| {
4211 assert(file_system_inputs.items.len > 0);4214 if (file_system_inputs.items.len == 0) {
4212 try s.serveStringMessage(.file_system_inputs, file_system_inputs.items);4215 assert(error_bundle.errorMessageCount() > 0);
4216 } else {
4217 try s.serveStringMessage(.file_system_inputs, file_system_inputs.items);
4218 }
4213 }4219 }
42144220
4215 var error_bundle = try comp.getAllErrorsAlloc();
4216 defer error_bundle.deinit(gpa);
4217 if (error_bundle.errorMessageCount() > 0) {4221 if (error_bundle.errorMessageCount() > 0) {
4218 try s.serveErrorBundle(error_bundle);4222 try s.serveErrorBundle(error_bundle);
4219 return;4223 return;