From 51eb6a30cdd9bc1f8e3e6bfcfca87e22eafbf6fc Mon Sep 17 00:00:00 2001 From: divverent Date: Wed, 6 Jun 2012 14:07:46 +0000 Subject: [PATCH] Mem_Realloc: allow the pool to be NULL in which case the block's previous pool is used git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@11825 d7cf8633-e32d-0410-b094-e92efae38249 --- zone.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/zone.c b/zone.c index 2f756d0e..16386369 100644 --- a/zone.c +++ b/zone.c @@ -382,7 +382,12 @@ void *_Mem_Alloc(mempool_t *pool, void *olddata, size_t size, size_t alignment, return NULL; } if (pool == NULL) - Sys_Error("Mem_Alloc: pool == NULL (alloc at %s:%i)", filename, fileline); + { + if(olddata) + pool = ((memheader_t *)((unsigned char *) olddata - sizeof(memheader_t)))->pool; + else + Sys_Error("Mem_Alloc: pool == NULL (alloc at %s:%i)", filename, fileline); + } if (mem_mutex) Thread_LockMutex(mem_mutex); if (developer_memory.integer) -- 2.39.2