X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Futil.c;h=2a70ec86596698b9962b2ce18566e9f751a8f0bb;hb=HEAD;hp=a91bb95e624bba6eeb3ed6e051ddd699126e4747;hpb=8c475e1fd504f46cbb8a882e760714925c012890;p=dosdemo diff --git a/src/util.c b/src/util.c index a91bb95..2a70ec8 100644 --- a/src/util.c +++ b/src/util.c @@ -1,3 +1,37 @@ +#include +#include +#include +#include #include "util.h" +#include "demo.h" uint32_t perf_start_count, perf_interval_count; + +void *malloc_nf_impl(size_t sz, const char *file, int line) +{ + void *p; + if(!(p = malloc(sz))) { + fprintf(stderr, "%s:%d failed to allocate %lu bytes\n", file, line, (unsigned long)sz); + demo_abort(); + } + return p; +} + +void *calloc_nf_impl(size_t num, size_t sz, const char *file, int line) +{ + void *p; + if(!(p = calloc(num, sz))) { + fprintf(stderr, "%s:%d failed to allocate %lu bytes\n", file, line, (unsigned long)(num * sz)); + demo_abort(); + } + return p; +} + +void *realloc_nf_impl(void *p, size_t sz, const char *file, int line) +{ + if(!(p = realloc(p, sz))) { + fprintf(stderr, "%s:%d failed to realloc %lu bytes\n", file, line, (unsigned long)sz); + demo_abort(); + } + return p; +}