ealloc.c - sbase - suckless unix tools
 (HTM) git clone git://git.suckless.org/sbase
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
       ealloc.c (1222B)
       ---
            1 /* See LICENSE file for copyright and license details. */
            2 #include <stdlib.h>
            3 #include <string.h>
            4 
            5 #include "../util.h"
            6 
            7 void *
            8 ecalloc(size_t nmemb, size_t size)
            9 {
           10         return encalloc(1, nmemb, size);
           11 }
           12 
           13 void *
           14 emalloc(size_t size)
           15 {
           16         return enmalloc(1, size);
           17 }
           18 
           19 void *
           20 erealloc(void *p, size_t size)
           21 {
           22         return enrealloc(1, p, size);
           23 }
           24 
           25 char *
           26 estrdup(const char *s)
           27 {
           28         return enstrdup(1, s);
           29 }
           30 
           31 char *
           32 estrndup(const char *s, size_t n)
           33 {
           34         return enstrndup(1, s, n);
           35 }
           36 
           37 void *
           38 encalloc(int status, size_t nmemb, size_t size)
           39 {
           40         void *p;
           41 
           42         p = calloc(nmemb, size);
           43         if (!p)
           44                 enprintf(status, "calloc: out of memory\n");
           45         return p;
           46 }
           47 
           48 void *
           49 enmalloc(int status, size_t size)
           50 {
           51         void *p;
           52 
           53         p = malloc(size);
           54         if (!p)
           55                 enprintf(status, "malloc: out of memory\n");
           56         return p;
           57 }
           58 
           59 void *
           60 enrealloc(int status, void *p, size_t size)
           61 {
           62         p = realloc(p, size);
           63         if (!p)
           64                 enprintf(status, "realloc: out of memory\n");
           65         return p;
           66 }
           67 
           68 char *
           69 enstrdup(int status, const char *s)
           70 {
           71         char *p;
           72 
           73         p = strdup(s);
           74         if (!p)
           75                 enprintf(status, "strdup: out of memory\n");
           76         return p;
           77 }
           78 
           79 char *
           80 enstrndup(int status, const char *s, size_t n)
           81 {
           82         char *p;
           83 
           84         p = strndup(s, n);
           85         if (!p)
           86                 enprintf(status, "strndup: out of memory\n");
           87         return p;
           88 }