]> git.armaanb.net Git - dmenu.git/blob - util.c
Switch to dark theme
[dmenu.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                 die("calloc:");
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         } else {
31                 fputc('\n', stderr);
32         }
33
34         exit(1);
35 }