a
This commit is contained in:
30
libc/sysfatal.c
Normal file
30
libc/sysfatal.c
Normal file
@ -0,0 +1,30 @@
|
||||
#include <u.h>
|
||||
#include <libc.h>
|
||||
|
||||
static void
|
||||
_sysfatalimpl(char *fmt, va_list arg)
|
||||
{
|
||||
char buf[1024];
|
||||
|
||||
vseprint(buf, buf+sizeof(buf), fmt, arg);
|
||||
if(argv0)
|
||||
fprint(2, "%s: %s\n", argv0, buf);
|
||||
else
|
||||
fprint(2, "%s\n", buf);
|
||||
#undef write
|
||||
write(2, buf, strlen(buf));
|
||||
write(2, "\n", 1);
|
||||
panic("sysfatal");
|
||||
}
|
||||
|
||||
void (*_sysfatal)(char *fmt, va_list arg) = _sysfatalimpl;
|
||||
|
||||
void
|
||||
sysfatal(char *fmt, ...)
|
||||
{
|
||||
va_list arg;
|
||||
|
||||
va_start(arg, fmt);
|
||||
(*_sysfatal)(fmt, arg);
|
||||
va_end(arg);
|
||||
}
|
Reference in New Issue
Block a user