summaryrefslogtreecommitdiff
path: root/misc/ttf2woff/compat.c
blob: 55d2cee72cfdd788d4d9ac94cd7d75cdeff5e8a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <stdarg.h>

static void er(int s, int e, char *f, va_list *va)
{
//	fprintf(stderr, "%s: ", getexecname());
	if(f) vfprintf(stderr, f, *va);
	va_end(*va);
	if(e >= 0) fprintf(stderr, ": %s", strerror(e));
	putc('\n', stderr);
	if(s >= 0) exit(s);
}

void err(int s, char *f, ...)
{
	va_list va;
	va_start(va, f);
	er(s, errno, f, &va);
}

void errx(int s, char *f, ...)
{
	va_list va;
	va_start(va, f);
	er(s, -1, f, &va);
}

void warn(char *f, ...)
{
	va_list va;
	va_start(va, f);
	er(-1, errno, f, &va);
}

void warnx(char *f, ...)
{
	va_list va;
	va_start(va, f);
	er(-1, -1, f, &va);
}