diff options
| author | Pietro Gagliardi <[email protected]> | 2015-04-16 20:33:28 -0400 |
|---|---|---|
| committer | Pietro Gagliardi <[email protected]> | 2015-04-16 20:33:28 -0400 |
| commit | e34c561ed5bedeb180437ec165882b98d70d38c1 (patch) | |
| tree | d095e5db16d7a23e883526c8c1d3c524639c97cf /new/windows/alloc.c | |
| parent | de9d72299fb89a8b6cdc8963cd6b6ae708a81e80 (diff) | |
Split the rewrite into a new repository.
Diffstat (limited to 'new/windows/alloc.c')
| -rw-r--r-- | new/windows/alloc.c | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/new/windows/alloc.c b/new/windows/alloc.c deleted file mode 100644 index 147c90d..0000000 --- a/new/windows/alloc.c +++ /dev/null @@ -1,49 +0,0 @@ -// 4 december 2014 -#include "uipriv_windows.h" - -// wrappers for allocator of choice -// panics on memory exhausted, undefined on heap corruption or other unreliably-detected malady (see http://stackoverflow.com/questions/28761680/is-there-a-windows-api-memory-allocator-deallocator-i-can-use-that-will-just-giv) -// new memory is set to zero -// passing NULL to tableRealloc() acts like tableAlloc() -// passing NULL to tableFree() is a no-op - -void *uiAlloc(size_t size, const char *type) -{ - void *out; - - out = malloc(size); - if (out == NULL) { - fprintf(stderr, "memory exhausted in uiAlloc() allocating %s\n", type); - abort(); - } - ZeroMemory(out, size); - if (options.debugLogAllocations) - fprintf(stderr, "%p alloc %s\n", out, type); - return out; -} - -void *uiRealloc(void *p, size_t size, const char *type) -{ - void *out; - - if (p == NULL) - return uiAlloc(size, type); - out = realloc(p, size); - if (out == NULL) { - fprintf(stderr, "memory exhausted in uiRealloc() reallocating %s\n", type); - abort(); - } - // TODO zero the extra memory - if (options.debugLogAllocations) - fprintf(stderr, "%p realloc %p\n", p, out); - return out; -} - -void uiFree(void *p) -{ - if (p == NULL) - return; - free(p); - if (options.debugLogAllocations) - fprintf(stderr, "%p free\n", p); -} |
