diff --git a/libretro-common/memmap/memalign.c b/libretro-common/memmap/memalign.c index 60f4ba4153..b4fd2eccd4 100644 --- a/libretro-common/memmap/memalign.c +++ b/libretro-common/memmap/memalign.c @@ -27,9 +27,9 @@ void *memalign_alloc(size_t boundary, size_t size) { - void **place; + void **place = NULL; uintptr_t addr = 0; - void *ptr = malloc(boundary + size + sizeof(uintptr_t)); + void *ptr = malloc(boundary + size + sizeof(uintptr_t)); if (!ptr) return NULL; @@ -43,6 +43,10 @@ void *memalign_alloc(size_t boundary, size_t size) void memalign_free(void *ptr) { - void **p = (void**)ptr; + void **p = NULL; + if (!ptr) + return; + + p = (void**)ptr; free(p[-1]); }