LibGame v0.4.0
The LG Game Engine - Copyright (C) 2024-2026 ETMSoftware
Loading...
Searching...
No Matches
lg_mem.h
1/*
2 * LibGame - Copyright (C) Emmanuel Thomas-Maurin 2011-2026
3 * All rights reserved
4 */
5
6#ifndef LG_MEM_H
7#define LG_MEM_H
8
9//#define LG_FREE_V2_DEBUGGING
10
11/*
12 * Wrappers for these mem alloc funcs
13 */
14void *malloc2_plus(size_t, const char *, unsigned int, const char *); /* size, __FILE__, __LINE__, __func__ */
15#define malloc3(...) malloc2_plus(__VA_ARGS__, __FILE__, __LINE__, __func__)
16
17void free2_plus(void *, const char *, unsigned int, const char *); /* mem , __FILE__, __LINE__, __func__ */
18#define free3(...) free2_plus(__VA_ARGS__, __FILE__, __LINE__, __func__)
19
20void free_v2(void **);
21
22/*static inline void free_v2(void **mem)
23{
24 if (mem != NULL) {
25 if (*mem != NULL) {
26 free(*mem);
27 *mem = NULL;
28 } else {
29 #ifdef LG_FREE_V2_DEBUGGING
30 INFO_ERR("*mem == NULL\n")
31 #endif
32 }
33 } else {
34 #ifdef LG_FREE_V2_DEBUGGING
35 INFO_ERR("mem == NULL\n")
36 #endif
37 }
38}*/
39
40#endif /* LG_MEM_H */
void free_v2(void **mem)
Definition lg_mem.c:97
void free2_plus(void *mem, const char *file, unsigned int line, const char *func)
Definition lg_mem.c:69
void * malloc2_plus(size_t size, const char *file, unsigned int line, const char *func)
Definition lg_mem.c:37