X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=zone.h;h=8db00453c8ca23fc05c986391bab4c25c888c43a;hb=962f8548215542e25bff899fa6fab5ca3f9827ba;hp=c76867d24e164879ed5550c1b2b9fccf364cb210;hpb=c901931fd040f01b09e1e20905bba38f7aee6f87;p=xonotic%2Fdarkplaces.git diff --git a/zone.h b/zone.h index c76867d2..8db00453 100644 --- a/zone.h +++ b/zone.h @@ -40,8 +40,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. typedef struct memheader_s { - // next memheader in chain belonging to pool - struct memheader_s *chain; + // next and previous memheaders in chain belonging to pool + struct memheader_s *next; + struct memheader_s *prev; // pool this memheader belongs to struct mempool_s *pool; #if MEMCLUMPING @@ -51,7 +52,7 @@ typedef struct memheader_s // size of the memory after the header (excluding header and sentinel2) int size; // file name and line where Mem_Alloc was called - char *filename; + const char *filename; int fileline; // should always be MEMHEADER_SENTINEL1 int sentinel1; @@ -103,7 +104,7 @@ typedef struct mempool_s // linked into global mempool list struct mempool_s *next; // file name and line where Mem_AllocPool was called - char *filename; + const char *filename; int fileline; // should always be MEMHEADER_SENTINEL1 int sentinel2; @@ -118,13 +119,13 @@ mempool_t; #define Mem_FreePool(pool) _Mem_FreePool(pool, __FILE__, __LINE__) #define Mem_EmptyPool(pool) _Mem_EmptyPool(pool, __FILE__, __LINE__) -void *_Mem_Alloc(mempool_t *pool, int size, char *filename, int fileline); -void _Mem_Free(void *data, char *filename, int fileline); -mempool_t *_Mem_AllocPool(char *name, char *filename, int fileline); -void _Mem_FreePool(mempool_t **pool, char *filename, int fileline); -void _Mem_EmptyPool(mempool_t *pool, char *filename, int fileline); -void _Mem_CheckSentinels(void *data, char *filename, int fileline); -void _Mem_CheckSentinelsGlobal(char *filename, int fileline); +void *_Mem_Alloc(mempool_t *pool, int size, const char *filename, int fileline); +void _Mem_Free(void *data, const char *filename, int fileline); +mempool_t *_Mem_AllocPool(const char *name, const char *filename, int fileline); +void _Mem_FreePool(mempool_t **pool, const char *filename, int fileline); +void _Mem_EmptyPool(mempool_t *pool, const char *filename, int fileline); +void _Mem_CheckSentinels(void *data, const char *filename, int fileline); +void _Mem_CheckSentinelsGlobal(const char *filename, int fileline); // used for temporary allocations mempool_t *tempmempool;