aboutsummaryrefslogtreecommitdiff
path: root/lib/std/builtin.zig
diff options
context:
space:
mode:
authorYusuf Bham <ybham6@gmail.com>2024-02-16 14:04:42 -0500
committerVeikka Tuominen <git@vexu.eu>2024-07-22 16:23:10 +0300
commitc16aeda8a66451e77c0113b5d160413f97fc72b0 (patch)
treef7cb01df4d069ce7a42f4eaa9a1face39481270c /lib/std/builtin.zig
parent1fc42ed3e7ca0b74b54aaa827276d995d6c7c6cd (diff)
downloadzig-c16aeda8a66451e77c0113b5d160413f97fc72b0.tar.gz
zig-c16aeda8a66451e77c0113b5d160413f97fc72b0.zip
std.builtin.panic(uefi): also output to con_out
Diffstat (limited to 'lib/std/builtin.zig')
-rw-r--r--lib/std/builtin.zig13
1 files changed, 9 insertions, 4 deletions
diff --git a/lib/std/builtin.zig b/lib/std/builtin.zig
index 3026911d3f..5591343c3a 100644
--- a/lib/std/builtin.zig
+++ b/lib/std/builtin.zig
@@ -830,10 +830,15 @@ pub fn default_panic(msg: []const u8, error_return_trace: ?*StackTrace, ret_addr
const exit_data = ExitData.create_exit_data(msg, &exit_size) catch null;
if (exit_data) |data| {
- if (uefi.system_table.std_err) |out| {
- _ = out.setAttribute(uefi.protocol.SimpleTextOutput.red);
- _ = out.outputString(data);
- _ = out.setAttribute(uefi.protocol.SimpleTextOutput.white);
+ // Output to both std_err and con_out, as std_err is easier
+ // to read in stuff like QEMU at times, but, unlike con_out,
+ // isn't visible on actual hardware if directly booted into
+ inline for ([_]?*uefi.protocol.SimpleTextOutput{ uefi.system_table.std_err, uefi.system_table.con_out }) |o| {
+ if (o) |out| {
+ _ = out.setAttribute(uefi.protocol.SimpleTextOutput.red);
+ _ = out.outputString(data);
+ _ = out.setAttribute(uefi.protocol.SimpleTextOutput.white);
+ }
}
}