You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
781 B
52 lines
781 B
|
|
#include "XAlloc.h" |
|
#include "RichString.h" |
|
|
|
#ifndef _GNU_SOURCE |
|
#define _GNU_SOURCE |
|
#endif |
|
#include <err.h> |
|
#include <stdlib.h> |
|
#include <string.h> |
|
|
|
/*{ |
|
#include <stdlib.h> |
|
}*/ |
|
|
|
static inline void fail() { |
|
curs_set(1); |
|
endwin(); |
|
err(1, NULL); |
|
} |
|
|
|
void* xMalloc(size_t size) { |
|
void* data = malloc(size); |
|
if (!data && size > 0) { |
|
fail(); |
|
} |
|
return data; |
|
} |
|
|
|
void* xCalloc(size_t nmemb, size_t size) { |
|
void* data = calloc(nmemb, size); |
|
if (!data) { |
|
fail(); |
|
} |
|
return data; |
|
} |
|
|
|
void* xRealloc(void* ptr, size_t size) { |
|
void* data = realloc(ptr, size); |
|
if (!data && size > 0) { |
|
fail(); |
|
} |
|
return data; |
|
} |
|
|
|
char* xStrdup(const char* str) { |
|
char* data = strdup(str); |
|
if (!data && str) { |
|
fail(); |
|
} |
|
return data; |
|
}
|
|
|