diff options
author | Nicholas Noll <nbnoll@eml.cc> | 2020-06-10 14:49:45 -0700 |
---|---|---|
committer | Nicholas Noll <nbnoll@eml.cc> | 2020-06-10 14:49:45 -0700 |
commit | e41eb5691417ecacade402759231f64778e3147f (patch) | |
tree | c28606655266f2702a30277f283e83b62f9a2cbb /sys/libn | |
parent | 5daf8d56cdf6aecd1b7301c622c3e35eaa47bd42 (diff) |
checkin: massive restructuring of dvtm
Diffstat (limited to 'sys/libn')
-rw-r--r-- | sys/libn/error.c | 43 |
1 files changed, 7 insertions, 36 deletions
diff --git a/sys/libn/error.c b/sys/libn/error.c index e0bb4d2..95a534a 100644 --- a/sys/libn/error.c +++ b/sys/libn/error.c @@ -25,53 +25,24 @@ verrorf(byte* fmt, va_list args) void panicf(byte* fmt, ...) { - int n; va_list args; - static byte buf[4*1024]; - va_start(args, fmt); - buf[0] = 'p'; - buf[1] = 'a'; - buf[2] = 'n'; - buf[3] = 'i'; - buf[4] = 'c'; - buf[5] = ':'; - buf[6] = ' '; - n = vsnprintf(buf+7, arrlen(buf)-8, fmt, args); - if (n < 0) - return; - buf[n+7] = 0; - perror(buf); + printf("panic: "); + vprintf(fmt, args); + printf("\n"); + va_end(args); - /* TODO: portable stack unwinding */ exit(1); } void vpanicf(byte* fmt, va_list args) { - int n; - va_list nargs; - static byte buf[4*1024]; - va_copy(nargs, args); - - buf[0] = 'p'; - buf[1] = 'a'; - buf[2] = 'n'; - buf[3] = 'i'; - buf[4] = 'c'; - buf[5] = ':'; - buf[6] = ' '; - n = vsnprintf(buf+7, arrlen(buf)-8, fmt, args); - if (n < 0) - return; - buf[n] = 0; - - perror(buf); - va_end(nargs); + printf("panic: "); + vprintf(fmt, args); + printf("\n"); - /* TODO: portable stack unwinding */ exit(1); } |