import new drw from libsl and minor fixes.
[dwm.git] / util.c
1 /* See LICENSE file for copyright and license details. */
2 #include <stdarg.h>
3 #include <stdio.h>
4 #include <stdlib.h>
5 #include <string.h>
6
7 #include "util.h"
8
9 void *
10 ecalloc(size_t nmemb, size_t size)
11 {
12 void *p;
13
14 if (!(p = calloc(nmemb, size)))
15 perror(NULL);
16 return p;
17 }
18
19 void
20 die(const char *fmt, ...) {
21 va_list ap;
22
23 va_start(ap, fmt);
24 vfprintf(stderr, fmt, ap);
25 va_end(ap);
26
27 if (fmt[0] && fmt[strlen(fmt)-1] == ':') {
28 fputc(' ', stderr);
29 perror(NULL);
30 }
31
32 exit(1);
33 }