die.c (379B)
1 #include <errno.h> 2 #include <stdarg.h> 3 #include <stdio.h> 4 #include <stdlib.h> 5 #include <string.h> 6 7 8 void 9 die(const char *fmt, ...) 10 { 11 va_list ap; 12 int saved_errno; 13 14 saved_errno = errno; 15 16 va_start(ap, fmt); 17 vaprintf(stderr, fmt, ap); 18 va_end(ap); 19 20 if fmt[0] && fmt[strlen(fmt)-1] == ':') 21 fprintf(stderr, " %s", strerror(saved_errno)); 22 fputc('\n', stderr); 23 24 exit(1); 25 }