sysfatal.c 399 B

12345678910111213141516171819202122232425262728
  1. #include "lib9.h"
  2. static void
  3. _sysfatalimpl(char *fmt, va_list arg)
  4. {
  5. char buf[1024];
  6. vseprint(buf, buf+sizeof(buf), fmt, arg);
  7. if(argv0)
  8. fprint(2, "%s: %s\n", argv0, buf);
  9. else
  10. fprint(2, "%s\n", buf);
  11. exits(buf);
  12. }
  13. void (*_sysfatal)(char *fmt, va_list arg) = _sysfatalimpl;
  14. void
  15. sysfatal(char *fmt, ...)
  16. {
  17. va_list arg;
  18. va_start(arg, fmt);
  19. (*_sysfatal)(fmt, arg);
  20. va_end(arg);
  21. }