Line data Source code
1 : /* 2 : * pmemory.c 3 : * Patater GUI Kit 4 : * 5 : * Created by Jaeden Amero on 2019-05-04. 6 : * Copyright 2019. SPDX-License-Identifier: AGPL-3.0-or-later 7 : */ 8 : 9 : #include "guikit/pmemory.h" 10 : #include "guikit/panic.h" 11 : #include <stdlib.h> 12 : 13 48 : void *pmalloc(size_t size) 14 : { 15 48 : void *ptr = malloc(size); 16 : /* LCOV_EXCL_START */ 17 : if (ptr == NULL) 18 : { 19 : panic("%s: Out of memory", "pmalloc"); 20 : } 21 : /* LCOV_EXCL_STOP */ 22 : 23 48 : return ptr; 24 : } 25 : 26 64 : void *pcalloc(size_t number, size_t size) 27 : { 28 64 : void *ptr = calloc(number, size); 29 : /* LCOV_EXCL_START */ 30 : if (ptr == NULL) 31 : { 32 : panic("%s: Out of memory", "pcalloc"); 33 : } 34 : /* LCOV_EXCL_STOP */ 35 : 36 64 : return ptr; 37 : } 38 : 39 5 : void *prealloc(void *ptr, size_t size) 40 : { 41 5 : ptr = realloc(ptr, size); 42 : /* LCOV_EXCL_START */ 43 : if (ptr == NULL) 44 : { 45 : panic("%s: Out of memory", "prealloc"); 46 : } 47 : /* LCOV_EXCL_STOP */ 48 : 49 5 : return ptr; 50 : } 51 : 52 112 : void pfree(void *ptr) 53 : { 54 112 : free(ptr); 55 112 : }