From 2a76a632922fe1b01cb548c91217d7fdbcd7ac75 Mon Sep 17 00:00:00 2001 From: avolkov Date: Sun, 11 Oct 2009 21:42:05 +0000 Subject: [PATCH] Cleanup of memlib and its use: removed legacy handle code, moved memory alloc funcs into memlib.h git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@3222 8092fc87-c524-0410-9efc-e669fe64eaf9 --- sc2/src/abxadec/abxaud.c | 1 - sc2/src/libs/decomp/lzdecode.c | 2 +- sc2/src/libs/decomp/lzh.h | 2 +- sc2/src/libs/file/dirs.c | 2 +- sc2/src/libs/file/files.c | 2 +- sc2/src/libs/file/temp.c | 2 +- sc2/src/libs/graphics/context.h | 1 + sc2/src/libs/graphics/drawable.c | 2 +- sc2/src/libs/graphics/font.h | 2 + sc2/src/libs/graphics/gfx_common.c | 2 + sc2/src/libs/graphics/gfx_common.h | 1 - sc2/src/libs/graphics/sdl/3do_getbody.c | 1 + sc2/src/libs/graphics/sdl/canvas.c | 1 + sc2/src/libs/graphics/sdl/dcqueue.c | 2 + sc2/src/libs/graphics/sdl/rotozoom.c | 2 +- sc2/src/libs/graphics/sdl/sdl_common.c | 1 + sc2/src/libs/graphics/sdl/sdluio.c | 2 +- sc2/src/libs/graphics/tfb_draw.c | 2 + sc2/src/libs/input/sdl/input.c | 2 +- sc2/src/libs/input/sdl/vcontrol.c | 2 +- sc2/src/libs/list/list.c | 2 +- sc2/src/libs/math/random2.c | 2 +- sc2/src/libs/memlib.h | 44 +- sc2/src/libs/memory/w_memlib.c | 558 +----------------- sc2/src/libs/misc.h | 5 - sc2/src/libs/reslib.h | 2 +- sc2/src/libs/resource/direct.c | 2 +- sc2/src/libs/resource/getres.c | 2 +- sc2/src/libs/resource/loadres.c | 2 + sc2/src/libs/resource/resinit.c | 2 +- sc2/src/libs/sound/decoders/aiffaud.c | 1 - sc2/src/libs/sound/decoders/decoder.c | 2 +- sc2/src/libs/sound/decoders/dukaud.c | 2 +- sc2/src/libs/sound/decoders/modaud.c | 2 +- sc2/src/libs/sound/decoders/oggaud.c | 1 - sc2/src/libs/sound/decoders/wav.c | 1 - sc2/src/libs/sound/mixer/mixer.c | 1 + .../sound/mixer/nosound/audiodrv_nosound.c | 1 + sc2/src/libs/sound/mixer/sdl/audiodrv_sdl.c | 1 + sc2/src/libs/sound/music.c | 1 + sc2/src/libs/sound/openal/audiodrv_openal.c | 1 + sc2/src/libs/sound/sfx.c | 1 + sc2/src/libs/sound/sndintrn.h | 1 + sc2/src/libs/sound/sound.c | 2 + sc2/src/libs/sound/sound.h | 1 - sc2/src/libs/sound/stream.c | 1 + sc2/src/libs/sound/trackplayer.c | 1 + sc2/src/libs/strings/getstr.c | 2 + sc2/src/libs/strings/strings.c | 2 +- sc2/src/libs/threads/pthread/posixthreads.c | 1 + sc2/src/libs/threads/sdl/sdlthreads.c | 1 + sc2/src/libs/threads/thrcommon.c | 2 +- sc2/src/libs/video/dukvid.c | 1 + sc2/src/libs/video/video.c | 2 + sc2/src/libs/video/video.h | 2 - sc2/src/libs/video/videodec.c | 1 + sc2/src/libs/video/vidplayer.c | 1 + sc2/src/libs/video/vresins.c | 2 + sc2/src/options.c | 1 + sc2/src/uqm/battlecontrols.c | 4 +- sc2/src/uqm/displist.h | 22 +- sc2/src/uqm/dummy.c | 1 + sc2/src/uqm/encount.c | 1 + sc2/src/uqm/flash.c | 2 +- sc2/src/uqm/getchar.c | 2 +- sc2/src/uqm/loadmele.c | 2 +- sc2/src/uqm/netplay/checkbuf.c | 1 - sc2/src/uqm/netplay/checksum.c | 1 - sc2/src/uqm/planets/plangen.c | 1 + sc2/src/uqm/planets/pstarmap.c | 1 + sc2/src/uqm/process.c | 2 + sc2/src/uqm/save.c | 1 + sc2/src/uqm/setup.c | 1 + sc2/src/uqm/setupmenu.c | 1 + sc2/src/uqm/starcon.c | 1 + sc2/src/uqm/state.c | 2 +- sc2/src/uqm/uqmdebug.c | 1 - 77 files changed, 102 insertions(+), 639 deletions(-) diff --git a/sc2/src/abxadec/abxaud.c b/sc2/src/abxadec/abxaud.c index 000133229..a943f1609 100644 --- a/sc2/src/abxadec/abxaud.c +++ b/sc2/src/abxadec/abxaud.c @@ -29,7 +29,6 @@ #include #include #include -//#include "libs/misc.h" //#include "port.h" #include "types.h" #include "port.h" diff --git a/sc2/src/libs/decomp/lzdecode.c b/sc2/src/libs/decomp/lzdecode.c index 26d53cefe..3b64a90f6 100644 --- a/sc2/src/libs/decomp/lzdecode.c +++ b/sc2/src/libs/decomp/lzdecode.c @@ -28,7 +28,7 @@ #include #include #include -#include "libs/decomp/lzh.h" +#include "lzh.h" #include "libs/reslib.h" PLZHCODE_DESC _lpCurCodeDesc; diff --git a/sc2/src/libs/decomp/lzh.h b/sc2/src/libs/decomp/lzh.h index c5d6e5746..62a0977b0 100644 --- a/sc2/src/libs/decomp/lzh.h +++ b/sc2/src/libs/decomp/lzh.h @@ -20,7 +20,7 @@ #define _LZH_H #include "libs/declib.h" -#include "libs/misc.h" +#include "libs/memlib.h" /* LZSS Parameters */ diff --git a/sc2/src/libs/file/dirs.c b/sc2/src/libs/file/dirs.c index 6cfed2a33..21939b83d 100644 --- a/sc2/src/libs/file/dirs.c +++ b/sc2/src/libs/file/dirs.c @@ -26,7 +26,7 @@ #include "config.h" #include "filintrn.h" #include "libs/compiler.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "libs/log.h" #ifdef HAVE_DRIVE_LETTERS diff --git a/sc2/src/libs/file/files.c b/sc2/src/libs/file/files.c index 1e99466b4..1a45b9482 100644 --- a/sc2/src/libs/file/files.c +++ b/sc2/src/libs/file/files.c @@ -26,7 +26,7 @@ #include "config.h" #include "types.h" #include "filintrn.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "libs/log.h" static int copyError(uio_Handle *srcHandle, uio_Handle *dstHandle, diff --git a/sc2/src/libs/file/temp.c b/sc2/src/libs/file/temp.c index c5943c42e..3253e0d51 100644 --- a/sc2/src/libs/file/temp.c +++ b/sc2/src/libs/file/temp.c @@ -29,7 +29,7 @@ #include "port.h" #include "libs/compiler.h" #include "libs/log.h" -#include "libs/misc.h" +#include "libs/memlib.h" static char *tempDirName; uio_DirHandle *tempDir; diff --git a/sc2/src/libs/graphics/context.h b/sc2/src/libs/graphics/context.h index 363503003..1046560bb 100644 --- a/sc2/src/libs/graphics/context.h +++ b/sc2/src/libs/graphics/context.h @@ -20,6 +20,7 @@ #define _CONTEXT_H #include "tfb_draw.h" +#include "libs/memlib.h" typedef UWORD FBK_FLAGS; #define FBK_DIRTY (1 << 0) diff --git a/sc2/src/libs/graphics/drawable.c b/sc2/src/libs/graphics/drawable.c index f35917b87..13a845ecd 100644 --- a/sc2/src/libs/graphics/drawable.c +++ b/sc2/src/libs/graphics/drawable.c @@ -17,7 +17,7 @@ */ #include "gfxintrn.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "tfb_draw.h" #include "gfxother.h" #include diff --git a/sc2/src/libs/graphics/font.h b/sc2/src/libs/graphics/font.h index b6964bcff..e1152beae 100644 --- a/sc2/src/libs/graphics/font.h +++ b/sc2/src/libs/graphics/font.h @@ -19,6 +19,8 @@ #ifndef _FONT_H #define _FONT_H +#include "libs/memlib.h" + #define MAX_DELTAS 100 typedef struct FontPage diff --git a/sc2/src/libs/graphics/gfx_common.c b/sc2/src/libs/graphics/gfx_common.c index ed2f5072e..4db6a6e20 100644 --- a/sc2/src/libs/graphics/gfx_common.c +++ b/sc2/src/libs/graphics/gfx_common.c @@ -19,6 +19,8 @@ #include "gfxintrn.h" #include "libs/graphics/gfx_common.h" #include "libs/graphics/drawcmd.h" +#include "libs/misc.h" + // for TFB_DEBUG_HALT DISPLAY_INTERFACE *_pCurDisplay; //Not a function. Probably has to be initialized... diff --git a/sc2/src/libs/graphics/gfx_common.h b/sc2/src/libs/graphics/gfx_common.h index 519f71496..16f8e7a36 100644 --- a/sc2/src/libs/graphics/gfx_common.h +++ b/sc2/src/libs/graphics/gfx_common.h @@ -23,7 +23,6 @@ #include #include "libs/gfxlib.h" -#include "libs/misc.h" // driver for TFB_InitGraphics enum diff --git a/sc2/src/libs/graphics/sdl/3do_getbody.c b/sc2/src/libs/graphics/sdl/3do_getbody.c index e15a4e859..41455a8ff 100644 --- a/sc2/src/libs/graphics/sdl/3do_getbody.c +++ b/sc2/src/libs/graphics/sdl/3do_getbody.c @@ -30,6 +30,7 @@ #include "libs/file.h" #include "libs/reslib.h" #include "libs/log.h" +#include "libs/memlib.h" #include "../font.h" #include "primitives.h" diff --git a/sc2/src/libs/graphics/sdl/canvas.c b/sc2/src/libs/graphics/sdl/canvas.c index 5f69751a4..0260576d6 100644 --- a/sc2/src/libs/graphics/sdl/canvas.c +++ b/sc2/src/libs/graphics/sdl/canvas.c @@ -21,6 +21,7 @@ #include "libs/graphics/sdl/primitives.h" #include "libs/graphics/tfb_draw.h" #include "libs/log.h" +#include "libs/memlib.h" #include "rotozoom.h" #include "options.h" #include "types.h" diff --git a/sc2/src/libs/graphics/sdl/dcqueue.c b/sc2/src/libs/graphics/sdl/dcqueue.c index fb386d4f6..40da71b0a 100644 --- a/sc2/src/libs/graphics/sdl/dcqueue.c +++ b/sc2/src/libs/graphics/sdl/dcqueue.c @@ -25,6 +25,8 @@ #include "libs/graphics/drawcmd.h" #include "libs/graphics/sdl/dcqueue.h" #include "libs/log.h" +#include "libs/misc.h" + // for TFB_DEBUG_HALT static RecursiveMutex DCQ_Mutex; diff --git a/sc2/src/libs/graphics/sdl/rotozoom.c b/sc2/src/libs/graphics/sdl/rotozoom.c index dcccb67f2..8fd262682 100644 --- a/sc2/src/libs/graphics/sdl/rotozoom.c +++ b/sc2/src/libs/graphics/sdl/rotozoom.c @@ -13,7 +13,7 @@ #include #include -#include "libs/misc.h" +#include "libs/memlib.h" #include "port.h" #include "rotozoom.h" diff --git a/sc2/src/libs/graphics/sdl/sdl_common.c b/sc2/src/libs/graphics/sdl/sdl_common.c index 1871dcb46..bda7fde93 100644 --- a/sc2/src/libs/graphics/sdl/sdl_common.c +++ b/sc2/src/libs/graphics/sdl/sdl_common.c @@ -32,6 +32,7 @@ #include "port.h" #include "libs/uio.h" #include "libs/log.h" +#include "libs/memlib.h" #include "libs/vidlib.h" #include SDL_INCLUDE(SDL_thread.h) diff --git a/sc2/src/libs/graphics/sdl/sdluio.c b/sc2/src/libs/graphics/sdl/sdluio.c index 4f109a0c0..977fe6d5e 100644 --- a/sc2/src/libs/graphics/sdl/sdluio.c +++ b/sc2/src/libs/graphics/sdl/sdluio.c @@ -22,7 +22,7 @@ #include SDL_INCLUDE(SDL_error.h) #include SDL_INCLUDE(SDL_rwops.h) #include SDL_IMAGE_INCLUDE(SDL_image.h) -#include "libs/misc.h" +#include "libs/memlib.h" #include #include diff --git a/sc2/src/libs/graphics/tfb_draw.c b/sc2/src/libs/graphics/tfb_draw.c index 35853216e..419bf7232 100644 --- a/sc2/src/libs/graphics/tfb_draw.c +++ b/sc2/src/libs/graphics/tfb_draw.c @@ -18,6 +18,8 @@ #include "tfb_draw.h" #include "drawcmd.h" #include "libs/log.h" +#include "libs/memlib.h" + static const HOT_SPOT NullHs = {0, 0}; diff --git a/sc2/src/libs/input/sdl/input.c b/sc2/src/libs/input/sdl/input.c index bd07ea842..294405d05 100644 --- a/sc2/src/libs/input/sdl/input.c +++ b/sc2/src/libs/input/sdl/input.c @@ -24,7 +24,7 @@ #include "libs/input/input_common.h" #include "libs/input/sdl/vcontrol.h" #include "libs/input/sdl/keynames.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "libs/file.h" #include "libs/log.h" #include "libs/reslib.h" diff --git a/sc2/src/libs/input/sdl/vcontrol.c b/sc2/src/libs/input/sdl/vcontrol.c index fe73d7dfe..1558f4c1a 100644 --- a/sc2/src/libs/input/sdl/vcontrol.c +++ b/sc2/src/libs/input/sdl/vcontrol.c @@ -20,7 +20,7 @@ #include #include #include "vcontrol.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "keynames.h" #include "libs/log.h" #include "libs/reslib.h" diff --git a/sc2/src/libs/list/list.c b/sc2/src/libs/list/list.c index 87ca168a3..9d86538a5 100644 --- a/sc2/src/libs/list/list.c +++ b/sc2/src/libs/list/list.c @@ -25,7 +25,7 @@ # include "list.h" #endif -#include "libs/misc.h" +#include "libs/memlib.h" #define malloc HMalloc #define free HFree #define realloc HRealloc diff --git a/sc2/src/libs/math/random2.c b/sc2/src/libs/math/random2.c index 7b9f86e85..f6d05db4a 100644 --- a/sc2/src/libs/math/random2.c +++ b/sc2/src/libs/math/random2.c @@ -24,7 +24,7 @@ #define RANDOM2_INTERNAL #include "random.h" -#include "libs/misc.h" +#include "libs/memlib.h" #define A 16807 /* a relatively prime number -- also M div Q */ diff --git a/sc2/src/libs/memlib.h b/sc2/src/libs/memlib.h index d64b98076..291b62429 100644 --- a/sc2/src/libs/memlib.h +++ b/sc2/src/libs/memlib.h @@ -19,45 +19,15 @@ #ifndef _MEMLIB_H #define _MEMLIB_H -#include "libs/compiler.h" +#include "types.h" -extern BOOLEAN mem_init (void); -extern BOOLEAN mem_uninit (void); +extern bool mem_init (void); +extern bool mem_uninit (void); -#ifdef LEGACY_HANDLE_ALLOCATOR - -#define NULL_HANDLE (MEM_HANDLE)(0L) - -typedef signed long MEM_SIZE; - -typedef SWORD MEM_HANDLE; -typedef UWORD MEM_FLAGS; - -#define DEFAULT_MEM_FLAGS (MEM_FLAGS)0 -#define MEM_PRIMARY (MEM_FLAGS)(1 << 8) -#define MEM_ZEROINIT (MEM_FLAGS)(1 << 9) -#define MEM_GRAPHICS (MEM_FLAGS)(1 << 10) -#define MEM_SOUND (MEM_FLAGS)(1 << 11) - -typedef struct mem_header { - MEM_HANDLE handle; -} _ALIGNED_ANY MEM_HEADER; -// _ALIGNED_ANY adds padding to the end of MEM_HEADER, so that the following -// address is aligned for any object (if the address of the MEM_HEADER -// itself is aligned for any object). - -#define GET_MEM_HEADER(addr) ((MEM_HEADER *) \ - (((char *) addr) - sizeof (MEM_HEADER))) - -extern MEM_HANDLE mem_allocate (MEM_SIZE size, MEM_FLAGS flags); -extern BOOLEAN mem_release (MEM_HANDLE handle); - -extern void* mem_lock (MEM_HANDLE handle); -extern BOOLEAN mem_unlock (MEM_HANDLE handle); - -extern MEM_SIZE mem_get_size (MEM_HANDLE handle); - -#endif /* LEGACY_HANDLE_ALLOCATOR */ +extern void *HMalloc (int size); +extern void HFree (void *p); +extern void *HCalloc (int size); +extern void *HRealloc (void *p, int size); #endif /* _MEMLIB_H */ diff --git a/sc2/src/libs/memory/w_memlib.c b/sc2/src/libs/memory/w_memlib.c index f0faf0475..ac7f2a2df 100644 --- a/sc2/src/libs/memory/w_memlib.c +++ b/sc2/src/libs/memory/w_memlib.c @@ -20,555 +20,21 @@ #include #include #include -//#include "3d.h" -//#include "tool.h" -//#include "utils.h" -//#include "pcwin.h" -#include "libs/compiler.h" -#ifdef LEGACY_HANDLE_ALLOCATOR -#include "libs/threadlib.h" -#endif #include "libs/memlib.h" #include "libs/log.h" #include "libs/misc.h" -#ifdef LEGACY_HANDLE_ALLOCATOR -#define GetToolFrame() 1 - -//#define MEM_DEBUG - -#ifdef MEM_DEBUG -#include -#endif - -#define LEAK_DEBUG - -#ifdef LEAK_DEBUG -BOOLEAN leak_debug; -int leak_idx = -1; -int leak_size = -1; -#endif -static Mutex _MemoryLock; - -//#define MAX_EXTENTS 100000 -#define MAX_EXTENTS (MEM_HANDLE) 32766 - // Changed to 32766 to get rid of warnings that an expression - // 'h <= MAX_EXTENTS' is always true due to limited range of - // MEM_HANDLE. - -/* Keep track of memory allocations. */ - -typedef struct _szMemoryNode { - void *memory; - struct _szMemoryNode *next; - MEM_HANDLE handle; - MEM_SIZE size; - int refcount; -} szMemoryNode; - -static szMemoryNode extents[MAX_EXTENTS]; -static szMemoryNode *freeListHead = NULL; - -/*****************************************************************************/ -/*FUNCTION -** -** SYNOPSIS -** CheckMemory() -** -** DESCRIPTION -** Checks integrity of memory allocation: diagnostic only. -** Either aborts or spits messages to stdout if there's a -** problem. -** -** INPUT -** -** OUTPUT -** -** HISTORY -** 04-Sept-96:AKL Creation. -** -** ASSUMPTIONS -** -**END*/ - -#ifdef MEM_DEBUG - -void CheckMemory(void) -{ - // Send all reports to STDOUT - _CrtSetReportMode( _CRT_WARN, _CRTDBG_MODE_FILE ); - _CrtSetReportFile( _CRT_WARN, _CRTDBG_FILE_STDOUT ); - _CrtSetReportMode( _CRT_ERROR, _CRTDBG_MODE_FILE ); - _CrtSetReportFile( _CRT_ERROR, _CRTDBG_FILE_STDOUT ); - _CrtSetReportMode( _CRT_ASSERT, _CRTDBG_MODE_FILE ); - _CrtSetReportFile( _CRT_ASSERT, _CRTDBG_FILE_STDOUT ); - - _CrtCheckMemory(); - fflush(stdout); -} -#endif - -/*****************************************************************************/ -/*FUNCTION -** -** SYNOPSIS -** mem = SafeMalloc (coreSize, diagnostic) -** -** DESCRIPTION -** Mallocs the required memory. If the malloc fails, the game -** is killed with a diagnostic string. -** -** INPUT -** int coreSize = How much memory to malloc (in bytes). -** char *diagnostic = String identifying the caller. -** -** OUTPUT -** void *mem = Ptr to memory. Never returns NULL. -** -** HISTORY -** 14-Jan-08:Cleanups and conversion from MallocWithRetry. -** 06-Nov-96:AKL Creation. -** -** ASSUMPTIONS -** -**END*/ - -static void * -SafeMalloc (int bytes, char *diagStr) -{ - void *ptr; - - ptr = malloc (bytes); - if (!ptr) - { - log_add (log_Fatal, "Malloc failed for %s. #Bytes %d.", diagStr, bytes); - fflush (stderr); - explode (); - } - return ptr; -} - -MEM_HANDLE -mem_allocate (MEM_SIZE coreSize, MEM_FLAGS flags) -{ - szMemoryNode *node; - - LockMutex (_MemoryLock); - -#ifdef MEM_DEBUG - CheckMemory(); -#endif - - if ((node = freeListHead) == NULL) - log_add (log_Error, "mem_allocate: out of extents."); - else if ((node->memory = MallocWithRetry (coreSize, "mem_allocate:")) == 0 - && coreSize) - log_add (log_Error, "mem_allocate: couldn't allocate %ld bytes.", - coreSize); - else - { - freeListHead = node->next; - - node->size = coreSize; - node->handle = node - extents + 1; - node->refcount = 0; - if (flags & MEM_ZEROINIT) - memset (node->memory, 0, node->size); -#ifdef LEAK_DEBUG - if (leak_debug) - { - log_add (log_Debug, "alloc %d: %p, %lu", (int) node->handle, - (void *) node->memory, node->size); - // Preferred form: - //log_add (log_Debug, "alloc %d: %#8" PRIxPTR ", %lu", - // (int) node->handle, (intptr_t) node->memory, node->size); - } - if (node->handle == leak_idx && node->size == leak_size) - node = node; - if (node->size == leak_size) - node = node; -#endif /* LEAK_DEBUG */ - - UnlockMutex (_MemoryLock); - return (node->handle); - } - - UnlockMutex (_MemoryLock); - return (0); -} - -/*****************************************************************************/ -/*FUNCTION -** -** SYNOPSIS -** size = mem_get_size(h) -** -** DESCRIPTION -** Returns the number of bytes in the given memory allocation. -** -** INPUT -** int h = Handle to memory allocation. -** -** OUTPUT -** int size = Number of bytes in allocation or zero on error. -** -** HISTORY -** 09-Jul-96:AKL Creation. Original version in LIBS\MEMORY\DATAINFO.C. -** -** ASSUMPTIONS -** -**END*/ - -MEM_SIZE -mem_get_size (MEM_HANDLE h) -{ - LockMutex (_MemoryLock); - if (h > 0 && h <= MAX_EXTENTS && extents[h - 1].handle == h) - { - UnlockMutex (_MemoryLock); - return ((int)extents[h - 1].size); - } - UnlockMutex (_MemoryLock); - - return (0); -} - -/*****************************************************************************/ -/*FUNCTION -** -** SYNOPSIS -** done = mem_init(coreSize, pma, diskName) -** -** DESCRIPTION -** Initialize data that tracks allocation extents. -** -** INPUT -** int coreSize = IGNORED! -** int * pma = IGNORED! -** PSTR diskName = IGNORED! -** -** OUTPUT -** int done = TRUE. -** -** HISTORY -** 09-Jul-96:AKL Creation. Original version in LIBS\MEMORY\INIT.C. -** -** ASSUMPTIONS -** -**END*/ - -BOOLEAN +bool mem_init (void) -{ - int i; - - _MemoryLock = CreateMutex ("memory lock", SYNC_CLASS_RESOURCE); - LockMutex (_MemoryLock); - - freeListHead = &extents[0]; - for (i=0; i= MAX_EXTENTS) - log_add (log_Debug, "LEAK: attempt to release invalid extent %d", h); - else if (extents[h].handle == -1) - log_add (log_Debug, "LEAK: attempt to release unallocated extent %d",h); - else if (extents[h].refcount == 0) - { -#ifdef LEAK_DEBUG - if (leak_debug) - { - log_add (log_Debug, "free %d: %p", - extents[h].handle, (void *) extents[h].memory); - // Preferred form: - //log_add (log_Debug, "free %d: %#8" PRIxPTR, - // extents[h].handle, (intptr_t) extents[h].memory); - } -#endif - if (extents[h].memory) - { - free (extents[h].memory); - extents[h].memory = 0; - } - extents[h].handle = -1; - extents[h].next = freeListHead; - freeListHead = &extents[h]; - UnlockMutex (_MemoryLock); - return TRUE; - } - - UnlockMutex (_MemoryLock); - return FALSE; -} - -/*****************************************************************************/ -/*FUNCTION -** -** SYNOPSIS -** memp = mem_lock (h) -** -** DESCRIPTION -** Converts a MEM_HANDLE into its equivalent pointer. -** -** INPUT -** int h = Handle to memory to be accessed. -** -** OUTPUT -** void * memp = Ptr to memory. -** -** HISTORY -** 09-Jul-96:AKL Creation. Original version in LIBS\MEMORY\SIMPLE.C. -** -** ASSUMPTIONS -** -**END*/ - -void * -mem_lock (MEM_HANDLE h) -{ - LockMutex (_MemoryLock); - - if (h > 0 && h <= MAX_EXTENTS && extents[h - 1].handle == h) - { - ++extents[h - 1].refcount; - UnlockMutex (_MemoryLock); - return (extents[h - 1].memory); - } - - UnlockMutex (_MemoryLock); - return (0); -} - -/*****************************************************************************/ -/*FUNCTION -** -** SYNOPSIS -** done = mem_simple_unaccess(h) -** -** DESCRIPTION -** Drops the refcount on a piece of memory. -** -** INPUT -** int h = Handle to memory to be unaccessed. -** -** OUTPUT -** int done = TRUE. -** -** HISTORY -** 09-Jul-96:AKL Creation. Original version in LIBS\MEMORY\SIMPLE.C. -** -** ASSUMPTIONS -** -**END*/ - -BOOLEAN -mem_unlock (MEM_HANDLE h) -{ - LockMutex (_MemoryLock); - if (h > 0 && h <= MAX_EXTENTS && extents[h - 1].handle == h) - { - if (extents[h - 1].refcount) - --extents[h - 1].refcount; - UnlockMutex (_MemoryLock); - return (1); - } - - UnlockMutex (_MemoryLock); - return (0); -} - -static void * -_alloc_mem (int size) -{ - void *p; - int h; - - h = mem_allocate (sizeof (MEM_HEADER) + size, DEFAULT_MEM_FLAGS); - p = (void *)mem_lock (h); - if (p) - { - ((MEM_HEADER *) p)->handle = h; - p = (char *)p + sizeof (MEM_HEADER); - } - - return (p); -} - -void * -HMalloc (int size) -{ - void *p; - - if (size == 0) return (0); - - if ((p = _alloc_mem(size)) == NULL) { - log_add (log_Fatal, "Fatal Error: HMalloc(): out of memory."); - fflush (stderr); - explode (); - } - return (p); -} - -void -HFree (void *p) -{ - if (p) - { - MEM_HEADER *hdr; - MEM_HANDLE h; - - hdr = GET_MEM_HEADER(p); - h = hdr->handle; - mem_unlock (h); - mem_release (h); - } -} - -void * -HCalloc (int size) -{ - void *p; - - p = HMalloc (size); - if (p) - memset (p, 0, size); - - return (p); -} - -void * -HRealloc (void *p, int size) -{ - void *np; - int osize; - - if ((np = _alloc_mem (size)) && p) - { - MEM_HEADER *hdr; - MEM_HANDLE h; - - hdr = GET_MEM_HEADER (p); - h = hdr->handle; - osize = mem_get_size (h) - sizeof (MEM_HEADER); - if (size > osize) - size = osize; - memcpy (np, p, size); - HFree (p); - } - - return (np); -} - -#else /* !LEGACY_HANDLE_ALLOCATOR */ - -BOOLEAN -mem_init (void) -{ - return TRUE; -} - -BOOLEAN -mem_uninit(void) -{ - return (TRUE); +bool +mem_uninit (void) +{ // This is a stub + return true; } void * @@ -576,7 +42,8 @@ HMalloc (int size) { void *p; - if (size == 0) return NULL; + if (size == 0) + return NULL; if (size < 0) { @@ -585,7 +52,8 @@ HMalloc (int size) explode (); } - if ((p = malloc (size)) == NULL) + p = malloc (size); + if (p == NULL) { log_add (log_Fatal, "Fatal Error: HMalloc(): out of memory."); fflush (stderr); @@ -617,7 +85,7 @@ HCalloc (int size) void * HRealloc (void *p, int size) { + // XXX: We assume throughout that HRealloc returns a valid pointer. + // Checks similar to HMalloc are needed here. return realloc (p, size); } - -#endif /* LEGACY_HANDLE_ALLOCATOR */ diff --git a/sc2/src/libs/misc.h b/sc2/src/libs/misc.h index 9a603dd37..dfb98a0bd 100644 --- a/sc2/src/libs/misc.h +++ b/sc2/src/libs/misc.h @@ -27,11 +27,6 @@ #include "port.h" -extern void *HMalloc (int size); -extern void HFree (void *p); -extern void *HCalloc (int size); -extern void *HRealloc (void *p, int size); - extern int TFB_DEBUG_HALT; static inline void explode (void) _NORETURN; diff --git a/sc2/src/libs/reslib.h b/sc2/src/libs/reslib.h index 53e041765..bf373159d 100644 --- a/sc2/src/libs/reslib.h +++ b/sc2/src/libs/reslib.h @@ -22,7 +22,7 @@ //#include #include "libs/compiler.h" #include "port.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "libs/uio.h" typedef struct resource_index_desc RESOURCE_INDEX_DESC; diff --git a/sc2/src/libs/resource/direct.c b/sc2/src/libs/resource/direct.c index 17b2d7e8a..b3d3541fd 100644 --- a/sc2/src/libs/resource/direct.c +++ b/sc2/src/libs/resource/direct.c @@ -17,7 +17,7 @@ */ #include "libs/strings/strintrn.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "port.h" #include "libs/uio.h" #include diff --git a/sc2/src/libs/resource/getres.c b/sc2/src/libs/resource/getres.c index 0eaacc0b5..e1ee4308d 100644 --- a/sc2/src/libs/resource/getres.c +++ b/sc2/src/libs/resource/getres.c @@ -19,7 +19,7 @@ #include "options.h" #include "port.h" #include "resintrn.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "libs/log.h" #include "libs/uio/charhashtable.h" diff --git a/sc2/src/libs/resource/loadres.c b/sc2/src/libs/resource/loadres.c index 99d0925ae..52d5345f5 100644 --- a/sc2/src/libs/resource/loadres.c +++ b/sc2/src/libs/resource/loadres.c @@ -18,6 +18,8 @@ #include "resintrn.h" #include "libs/declib.h" +#include "libs/memlib.h" + void * GetResourceData (uio_Stream *fp, DWORD length) diff --git a/sc2/src/libs/resource/resinit.c b/sc2/src/libs/resource/resinit.c index 7c196ff0a..a0007f859 100644 --- a/sc2/src/libs/resource/resinit.c +++ b/sc2/src/libs/resource/resinit.c @@ -17,7 +17,7 @@ */ #include "resintrn.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "options.h" #include "types.h" #include "libs/log.h" diff --git a/sc2/src/libs/sound/decoders/aiffaud.c b/sc2/src/libs/sound/decoders/aiffaud.c index ae4574c57..daa508fae 100644 --- a/sc2/src/libs/sound/decoders/aiffaud.c +++ b/sc2/src/libs/sound/decoders/aiffaud.c @@ -33,7 +33,6 @@ #include "types.h" #include "libs/uio.h" #include "endian_uqm.h" -#include "libs/misc.h" #include "libs/log.h" #include "aiffaud.h" diff --git a/sc2/src/libs/sound/decoders/decoder.c b/sc2/src/libs/sound/decoders/decoder.c index 3a2190c7c..e375c9cab 100644 --- a/sc2/src/libs/sound/decoders/decoder.c +++ b/sc2/src/libs/sound/decoders/decoder.c @@ -21,7 +21,7 @@ #include #include #include "port.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "libs/file.h" #include "libs/log.h" #include "decoder.h" diff --git a/sc2/src/libs/sound/decoders/dukaud.c b/sc2/src/libs/sound/decoders/dukaud.c index 78f5c1069..9e7a6ed65 100644 --- a/sc2/src/libs/sound/decoders/dukaud.c +++ b/sc2/src/libs/sound/decoders/dukaud.c @@ -20,7 +20,7 @@ #include #include #include -#include "libs/misc.h" +#include "libs/memlib.h" #include "port.h" #include "types.h" #include "libs/uio.h" diff --git a/sc2/src/libs/sound/decoders/modaud.c b/sc2/src/libs/sound/decoders/modaud.c index a335579f4..e7ef831dd 100644 --- a/sc2/src/libs/sound/decoders/modaud.c +++ b/sc2/src/libs/sound/decoders/modaud.c @@ -20,7 +20,7 @@ #include #include #include -#include "libs/misc.h" +#include "libs/memlib.h" #include "port.h" #include "types.h" #include "endian_uqm.h" diff --git a/sc2/src/libs/sound/decoders/oggaud.c b/sc2/src/libs/sound/decoders/oggaud.c index 3bdc044a2..622712067 100644 --- a/sc2/src/libs/sound/decoders/oggaud.c +++ b/sc2/src/libs/sound/decoders/oggaud.c @@ -20,7 +20,6 @@ #include #include #include -#include "libs/misc.h" #include "libs/log.h" #include "port.h" #include "types.h" diff --git a/sc2/src/libs/sound/decoders/wav.c b/sc2/src/libs/sound/decoders/wav.c index f1e376eb4..573be59eb 100644 --- a/sc2/src/libs/sound/decoders/wav.c +++ b/sc2/src/libs/sound/decoders/wav.c @@ -24,7 +24,6 @@ #include "types.h" #include "libs/uio.h" #include "endian_uqm.h" -#include "libs/misc.h" #include "libs/log.h" #include "wav.h" diff --git a/sc2/src/libs/sound/mixer/mixer.c b/sc2/src/libs/sound/mixer/mixer.c index 8be58864d..908b32384 100644 --- a/sc2/src/libs/sound/mixer/mixer.c +++ b/sc2/src/libs/sound/mixer/mixer.c @@ -25,6 +25,7 @@ #include "libs/misc.h" #include "libs/threadlib.h" #include "libs/log.h" +#include "libs/memlib.h" static uint32 mixer_initialized = 0; static uint32 mixer_format; diff --git a/sc2/src/libs/sound/mixer/nosound/audiodrv_nosound.c b/sc2/src/libs/sound/mixer/nosound/audiodrv_nosound.c index 2fe15380e..04ccd0076 100644 --- a/sc2/src/libs/sound/mixer/nosound/audiodrv_nosound.c +++ b/sc2/src/libs/sound/mixer/nosound/audiodrv_nosound.c @@ -22,6 +22,7 @@ #include "audiodrv_nosound.h" #include "libs/tasklib.h" #include "libs/log.h" +#include "libs/memlib.h" #include diff --git a/sc2/src/libs/sound/mixer/sdl/audiodrv_sdl.c b/sc2/src/libs/sound/mixer/sdl/audiodrv_sdl.c index 8045552c0..a153999b8 100644 --- a/sc2/src/libs/sound/mixer/sdl/audiodrv_sdl.c +++ b/sc2/src/libs/sound/mixer/sdl/audiodrv_sdl.c @@ -22,6 +22,7 @@ #include "audiodrv_sdl.h" #include "libs/tasklib.h" #include "libs/log.h" +#include "libs/memlib.h" #include diff --git a/sc2/src/libs/sound/music.c b/sc2/src/libs/sound/music.c index 9e1535ebb..ac39df07a 100644 --- a/sc2/src/libs/sound/music.c +++ b/sc2/src/libs/sound/music.c @@ -20,6 +20,7 @@ #include "sound.h" #include "libs/reslib.h" #include "libs/log.h" +#include "libs/memlib.h" static MUSIC_REF curMusicRef; diff --git a/sc2/src/libs/sound/openal/audiodrv_openal.c b/sc2/src/libs/sound/openal/audiodrv_openal.c index 726831e88..96d09d9f1 100644 --- a/sc2/src/libs/sound/openal/audiodrv_openal.c +++ b/sc2/src/libs/sound/openal/audiodrv_openal.c @@ -23,6 +23,7 @@ #include "audiodrv_openal.h" #include "libs/tasklib.h" #include "libs/log.h" +#include "libs/memlib.h" #include diff --git a/sc2/src/libs/sound/sfx.c b/sc2/src/libs/sound/sfx.c index 3309a9909..399cf76a4 100644 --- a/sc2/src/libs/sound/sfx.c +++ b/sc2/src/libs/sound/sfx.c @@ -19,6 +19,7 @@ #include "libs/reslib.h" #include "libs/log.h" #include "libs/strings/strintrn.h" +#include "libs/memlib.h" #include diff --git a/sc2/src/libs/sound/sndintrn.h b/sc2/src/libs/sound/sndintrn.h index f01cd3a71..1c35b550a 100644 --- a/sc2/src/libs/sound/sndintrn.h +++ b/sc2/src/libs/sound/sndintrn.h @@ -22,6 +22,7 @@ #include #include "libs/sndlib.h" #include "libs/reslib.h" +#include "libs/memlib.h" extern void *_GetMusicData (uio_Stream *fp, DWORD length); extern BOOLEAN _ReleaseMusicData (void *handle); diff --git a/sc2/src/libs/sound/sound.c b/sc2/src/libs/sound/sound.c index 4249b224f..147ff1eef 100644 --- a/sc2/src/libs/sound/sound.c +++ b/sc2/src/libs/sound/sound.c @@ -20,6 +20,8 @@ #include "libs/compiler.h" #include "libs/tasklib.h" #include "libs/inplib.h" +#include "libs/memlib.h" + static Task FadeTask; static SIZE TTotal; diff --git a/sc2/src/libs/sound/sound.h b/sc2/src/libs/sound/sound.h index 505a8c2fc..d77db235e 100644 --- a/sc2/src/libs/sound/sound.h +++ b/sc2/src/libs/sound/sound.h @@ -17,7 +17,6 @@ #ifndef _UQM_SOUND_H // try avoiding collisions on id #define _UQM_SOUND_H -#include "libs/misc.h" #include "sndintrn.h" #include "audiocore.h" #include "decoders/decoder.h" diff --git a/sc2/src/libs/sound/stream.c b/sc2/src/libs/sound/stream.c index acdc9282f..952e9ed92 100644 --- a/sc2/src/libs/sound/stream.c +++ b/sc2/src/libs/sound/stream.c @@ -19,6 +19,7 @@ #include "sound.h" #include "libs/tasklib.h" #include "libs/log.h" +#include "libs/memlib.h" void diff --git a/sc2/src/libs/sound/trackplayer.c b/sc2/src/libs/sound/trackplayer.c index df17a4418..3832cc102 100644 --- a/sc2/src/libs/sound/trackplayer.c +++ b/sc2/src/libs/sound/trackplayer.c @@ -18,6 +18,7 @@ #include "libs/sound/trackplayer.h" #include "libs/sound/trackint.h" #include "libs/log.h" +#include "libs/memlib.h" #include "options.h" #include #include diff --git a/sc2/src/libs/strings/getstr.c b/sc2/src/libs/strings/getstr.c index a96f956d4..657a53be0 100644 --- a/sc2/src/libs/strings/getstr.c +++ b/sc2/src/libs/strings/getstr.c @@ -21,6 +21,8 @@ #include "libs/graphics/gfx_common.h" #include "libs/reslib.h" #include "libs/log.h" +#include "libs/memlib.h" + #define MAX_STRINGS 2048 #define POOL_SIZE 4096 diff --git a/sc2/src/libs/strings/strings.c b/sc2/src/libs/strings/strings.c index 1e68ebdb1..0bf3beae1 100644 --- a/sc2/src/libs/strings/strings.c +++ b/sc2/src/libs/strings/strings.c @@ -17,7 +17,7 @@ */ #include "strintrn.h" -#include "libs/misc.h" +#include "libs/memlib.h" STRING_TABLE AllocStringTable (int num_entries, int flags) diff --git a/sc2/src/libs/threads/pthread/posixthreads.c b/sc2/src/libs/threads/pthread/posixthreads.c index d1e60da67..4f0d2e8da 100644 --- a/sc2/src/libs/threads/pthread/posixthreads.c +++ b/sc2/src/libs/threads/pthread/posixthreads.c @@ -16,6 +16,7 @@ #include #include "libs/misc.h" +#include "libs/memlib.h" #include "posixthreads.h" #include #include diff --git a/sc2/src/libs/threads/sdl/sdlthreads.c b/sc2/src/libs/threads/sdl/sdlthreads.c index fe8cb4c3b..c2aba143e 100644 --- a/sc2/src/libs/threads/sdl/sdlthreads.c +++ b/sc2/src/libs/threads/sdl/sdlthreads.c @@ -16,6 +16,7 @@ #include #include "libs/misc.h" +#include "libs/memlib.h" #include "sdlthreads.h" #ifdef PROFILE_THREADS #include diff --git a/sc2/src/libs/threads/thrcommon.c b/sc2/src/libs/threads/thrcommon.c index d8fb3ed72..041712cf1 100644 --- a/sc2/src/libs/threads/thrcommon.c +++ b/sc2/src/libs/threads/thrcommon.c @@ -18,8 +18,8 @@ #include #include "libs/threadlib.h" #include "libs/timelib.h" -#include "libs/misc.h" #include "libs/log.h" +#include "libs/memlib.h" #include "thrcommon.h" #define LIFECYCLE_SIZE 8 diff --git a/sc2/src/libs/video/dukvid.c b/sc2/src/libs/video/dukvid.c index fe7d9c1e7..48db6cd78 100644 --- a/sc2/src/libs/video/dukvid.c +++ b/sc2/src/libs/video/dukvid.c @@ -24,6 +24,7 @@ #include #include #include "libs/uio.h" +#include "libs/memlib.h" #include "endian_uqm.h" #define THIS_PTR TFB_VideoDecoder* This diff --git a/sc2/src/libs/video/video.c b/sc2/src/libs/video/video.c index 28380ea5d..1cd41a255 100644 --- a/sc2/src/libs/video/video.c +++ b/sc2/src/libs/video/video.c @@ -16,8 +16,10 @@ #include "video.h" +#include "options.h" #include "vidplayer.h" #include "libs/inplib.h" +#include "libs/memlib.h" // XXX: we should not include anything from uqm/ inside libs/ #include "uqm/setup.h" diff --git a/sc2/src/libs/video/video.h b/sc2/src/libs/video/video.h index faadbc249..047eefbb9 100644 --- a/sc2/src/libs/video/video.h +++ b/sc2/src/libs/video/video.h @@ -17,8 +17,6 @@ #ifndef _UQM_VIDEO_H #define _UQM_VIDEO_H -#include "options.h" -#include "libs/misc.h" #include "libs/vidlib.h" #include "libs/graphics/tfb_draw.h" #include "types.h" diff --git a/sc2/src/libs/video/videodec.c b/sc2/src/libs/video/videodec.c index f006a5172..26016cc47 100644 --- a/sc2/src/libs/video/videodec.c +++ b/sc2/src/libs/video/videodec.c @@ -19,6 +19,7 @@ #include "videodec.h" #include "dukvid.h" #include "libs/log.h" +#include "libs/memlib.h" #define MAX_REG_DECODERS 31 diff --git a/sc2/src/libs/video/vidplayer.c b/sc2/src/libs/video/vidplayer.c index 7d5348f66..220604def 100644 --- a/sc2/src/libs/video/vidplayer.c +++ b/sc2/src/libs/video/vidplayer.c @@ -19,6 +19,7 @@ #include "libs/graphics/gfx_common.h" #include "libs/graphics/tfb_draw.h" #include "libs/log.h" +#include "libs/memlib.h" // XXX: we should not include anything from uqm/ inside libs/ #include "uqm/controls.h" #include "uqm/settings.h" diff --git a/sc2/src/libs/video/vresins.c b/sc2/src/libs/video/vresins.c index f5f807de8..58011315c 100644 --- a/sc2/src/libs/video/vresins.c +++ b/sc2/src/libs/video/vresins.c @@ -20,6 +20,8 @@ #include #include "vidintrn.h" #include "libs/log.h" +#include "libs/memlib.h" + static BOOLEAN FreeLegacyVideoData (void *data) diff --git a/sc2/src/options.c b/sc2/src/options.c index b7351454c..0f289cee9 100644 --- a/sc2/src/options.c +++ b/sc2/src/options.c @@ -30,6 +30,7 @@ #include "libs/strlib.h" #include "libs/log.h" #include "libs/reslib.h" +#include "libs/memlib.h" #include #include diff --git a/sc2/src/uqm/battlecontrols.c b/sc2/src/uqm/battlecontrols.c index d63d2bb46..8edeb6590 100644 --- a/sc2/src/uqm/battlecontrols.c +++ b/sc2/src/uqm/battlecontrols.c @@ -20,8 +20,8 @@ // For computer_intelligence() #include "tactrans.h" // For battleEndReady* -#include "libs/misc.h" - // For HFree() +#include "libs/memlib.h" + // For HMalloc(), HFree() #ifdef NETPLAY # include "netplay/netmelee.h" #endif /* NETPLAY */ diff --git a/sc2/src/uqm/displist.h b/sc2/src/uqm/displist.h index e52eabf7d..30b3caeed 100644 --- a/sc2/src/uqm/displist.h +++ b/sc2/src/uqm/displist.h @@ -22,7 +22,7 @@ #include #include "port.h" #include "libs/compiler.h" -#include "libs/misc.h" +#include "libs/memlib.h" // Note that we MUST use the QUEUE_TABLE variant at this time, because // certain gameplay elements depend on it. Namely, the maximum number @@ -32,12 +32,7 @@ // code works now. #define QUEUE_TABLE -#ifdef QUEUE_TABLE typedef void* QUEUE_HANDLE; -#else /* !QUEUE_TABLE */ -#include "libs/memlib.h" -typedef MEM_HANDLE QUEUE_HANDLE; -#endif /* QUEUE_TABLE */ typedef UWORD OBJ_SIZE; typedef QUEUE_HANDLE HLINK; @@ -66,6 +61,9 @@ typedef struct /* queue */ #ifdef QUEUE_TABLE +extern HLINK AllocLink (QUEUE *pq); +extern void FreeLink (QUEUE *pq, HLINK hLink); + static inline LINK * LockLink (const QUEUE *pq, HLINK h) { @@ -96,10 +94,10 @@ UnlockLink (const QUEUE *pq, HLINK h) #define SizeQueueTab(pq) (COUNT)((pq)->num_objects) #define GetLinkAddr(pq,i) (HLINK)((pq)->pq_tab + ((pq)->object_size * ((i) - 1))) #else /* !QUEUE_TABLE */ -#define AllocLink(pq) (HLINK)mem_allocate ((pq)->object_size, DEFAULT_MEM_FLAGS) -#define LockLink(pq, h) (LINK*)mem_lock (h) -#define UnlockLink(pq, h) mem_unlock (h) -#define FreeLink(pq,h) mem_release (h) +#define AllocLink(pq) (HLINK)HMalloc ((pq)->object_size) +#define LockLink(pq, h) ((LINK*)(h)) +#define UnlockLink(pq, h) ((void)(h)) +#define FreeLink(pq,h) HFree (h) #endif /* QUEUE_TABLE */ #define SetLinkSize(pq,s) ((pq)->object_size = (COUNT)(s)) @@ -121,10 +119,6 @@ extern void InsertQueue (QUEUE *pq, HLINK hLink, HLINK hRefLink); extern void RemoveQueue (QUEUE *pq, HLINK hLink); extern COUNT CountLinks (QUEUE *pq); void ForAllLinks(QUEUE *pq, void (*callback)(LINK *, void *), void *arg); -#ifdef QUEUE_TABLE -extern HLINK AllocLink (QUEUE *pq); -extern void FreeLink (QUEUE *pq, HLINK hLink); -#endif /* QUEUE_TABLE */ #endif /* _DISPLIST_H */ diff --git a/sc2/src/uqm/dummy.c b/sc2/src/uqm/dummy.c index c01df2e63..66d2c093f 100644 --- a/sc2/src/uqm/dummy.c +++ b/sc2/src/uqm/dummy.c @@ -27,6 +27,7 @@ #include "libs/compiler.h" #include "libs/log.h" +#include "libs/memlib.h" #include #include diff --git a/sc2/src/uqm/encount.c b/sc2/src/uqm/encount.c index 0c94af5c3..627c8abe8 100644 --- a/sc2/src/uqm/encount.c +++ b/sc2/src/uqm/encount.c @@ -39,6 +39,7 @@ #include "libs/log.h" #include "libs/mathlib.h" #include "libs/inplib.h" +#include "libs/misc.h" static void DrawFadeText (const UNICODE *str1, const UNICODE *str2, diff --git a/sc2/src/uqm/flash.c b/sc2/src/uqm/flash.c index 2ed9ced55..1241c32af 100644 --- a/sc2/src/uqm/flash.c +++ b/sc2/src/uqm/flash.c @@ -29,7 +29,7 @@ #include "setup.h" #include "libs/log.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "libs/threadlib.h" diff --git a/sc2/src/uqm/getchar.c b/sc2/src/uqm/getchar.c index 421b09651..467e39222 100644 --- a/sc2/src/uqm/getchar.c +++ b/sc2/src/uqm/getchar.c @@ -19,7 +19,7 @@ #include "port.h" #include "controls.h" #include "libs/inplib.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "libs/log.h" #include "globdata.h" #include "sounds.h" diff --git a/sc2/src/uqm/loadmele.c b/sc2/src/uqm/loadmele.c index 0b45460aa..67273ffb8 100644 --- a/sc2/src/uqm/loadmele.c +++ b/sc2/src/uqm/loadmele.c @@ -30,7 +30,7 @@ #include "sounds.h" #include "options.h" #include "libs/log.h" -#include "libs/misc.h" +#include "libs/memlib.h" #define LOAD_TEAM_NAME_TEXT_COLOR \ diff --git a/sc2/src/uqm/netplay/checkbuf.c b/sc2/src/uqm/netplay/checkbuf.c index 324138078..a0b8513c8 100644 --- a/sc2/src/uqm/netplay/checkbuf.c +++ b/sc2/src/uqm/netplay/checkbuf.c @@ -22,7 +22,6 @@ #include "netplay.h" #include "checkbuf.h" #include "libs/log.h" -#include "libs/misc.h" #include "../battle.h" // for battleFrameCount diff --git a/sc2/src/uqm/netplay/checksum.c b/sc2/src/uqm/netplay/checksum.c index 0b2797f36..5ed6560a7 100644 --- a/sc2/src/uqm/netplay/checksum.c +++ b/sc2/src/uqm/netplay/checksum.c @@ -32,7 +32,6 @@ // for new_ship #include "libs/log.h" #include "libs/mathlib.h" -#include "libs/misc.h" ChecksumBuffer localChecksumBuffer; diff --git a/sc2/src/uqm/planets/plangen.c b/sc2/src/uqm/planets/plangen.c index 978df9ea5..b3bdae3c8 100644 --- a/sc2/src/uqm/planets/plangen.c +++ b/sc2/src/uqm/planets/plangen.c @@ -26,6 +26,7 @@ #include "libs/graphics/drawable.h" #include "libs/mathlib.h" #include "libs/log.h" +#include "libs/memlib.h" #include #include diff --git a/sc2/src/uqm/planets/pstarmap.c b/sc2/src/uqm/planets/pstarmap.c index f84bf32d6..412b88dbc 100644 --- a/sc2/src/uqm/planets/pstarmap.c +++ b/sc2/src/uqm/planets/pstarmap.c @@ -34,6 +34,7 @@ #include "libs/strlib.h" #include "libs/graphics/gfx_common.h" #include "libs/mathlib.h" +#include "libs/memlib.h" static inline long diff --git a/sc2/src/uqm/process.c b/sc2/src/uqm/process.c index 8a2e3159e..8820bf5f4 100644 --- a/sc2/src/uqm/process.c +++ b/sc2/src/uqm/process.c @@ -31,6 +31,8 @@ #include "libs/graphics/drawcmd.h" #include "libs/graphics/gfx_common.h" #include "libs/log.h" +#include "libs/misc.h" + //#define DEBUG_PROCESS diff --git a/sc2/src/uqm/save.c b/sc2/src/uqm/save.c index f2bb74030..8c9408906 100644 --- a/sc2/src/uqm/save.c +++ b/sc2/src/uqm/save.c @@ -36,6 +36,7 @@ #include "util.h" #include "libs/inplib.h" #include "libs/log.h" +#include "libs/memlib.h" // XXX: these should handle endian conversions later diff --git a/sc2/src/uqm/setup.c b/sc2/src/uqm/setup.c index fa30e429e..ffd6e2949 100644 --- a/sc2/src/uqm/setup.c +++ b/sc2/src/uqm/setup.c @@ -36,6 +36,7 @@ #include "libs/threadlib.h" #include "libs/vidlib.h" #include "libs/log.h" +#include "libs/misc.h" #include #include diff --git a/sc2/src/uqm/setupmenu.c b/sc2/src/uqm/setupmenu.c index fa1cc064f..a2fa4071e 100644 --- a/sc2/src/uqm/setupmenu.c +++ b/sc2/src/uqm/setupmenu.c @@ -34,6 +34,7 @@ #include "libs/sound/sound.h" #include "libs/resource/stringbank.h" #include "libs/log.h" +#include "libs/memlib.h" #include "resinst.h" #include "nameref.h" diff --git a/sc2/src/uqm/starcon.c b/sc2/src/uqm/starcon.c index 2a915a45d..a87f45154 100644 --- a/sc2/src/uqm/starcon.c +++ b/sc2/src/uqm/starcon.c @@ -38,6 +38,7 @@ #include "libs/gfxlib.h" #include "libs/graphics/gfx_common.h" #include "libs/inplib.h" +#include "libs/misc.h" #include "uqmversion.h" #include "options.h" diff --git a/sc2/src/uqm/state.c b/sc2/src/uqm/state.c index 5e5799da2..61d6be648 100644 --- a/sc2/src/uqm/state.c +++ b/sc2/src/uqm/state.c @@ -19,7 +19,7 @@ #include "state.h" #include "encount.h" -#include "libs/misc.h" +#include "libs/memlib.h" #include "libs/log.h" #ifdef HAVE_UNISTD_H #include diff --git a/sc2/src/uqm/uqmdebug.c b/sc2/src/uqm/uqmdebug.c index 866dcc65a..10946b891 100644 --- a/sc2/src/uqm/uqmdebug.c +++ b/sc2/src/uqm/uqmdebug.c @@ -32,7 +32,6 @@ #include "setup.h" #include "state.h" #include "libs/mathlib.h" -#include "libs/misc.h" #include #include