mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2025-09-20 04:26:03 +08:00
Update for latest game update.
This commit is contained in:
@ -12,7 +12,6 @@
|
|||||||
|
|
||||||
#include "appframework/IAppSystem.h"
|
#include "appframework/IAppSystem.h"
|
||||||
#include "tier1/iconvar.h"
|
#include "tier1/iconvar.h"
|
||||||
#include "tier0/memalloc.h"
|
|
||||||
|
|
||||||
class ConCommandBase;
|
class ConCommandBase;
|
||||||
class ConCommand;
|
class ConCommand;
|
||||||
@ -156,6 +155,7 @@ protected:
|
|||||||
class ICVarIteratorInternal
|
class ICVarIteratorInternal
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
virtual ~ICVarIteratorInternal() {}
|
||||||
virtual void SetFirst( void ) = 0;
|
virtual void SetFirst( void ) = 0;
|
||||||
virtual void Next( void ) = 0;
|
virtual void Next( void ) = 0;
|
||||||
virtual bool IsValid( void ) = 0;
|
virtual bool IsValid( void ) = 0;
|
||||||
@ -175,7 +175,7 @@ inline ICvar::Iterator::Iterator(ICvar *icvar)
|
|||||||
|
|
||||||
inline ICvar::Iterator::~Iterator( void )
|
inline ICvar::Iterator::~Iterator( void )
|
||||||
{
|
{
|
||||||
g_pMemAlloc->Free(m_pIter);
|
delete m_pIter;
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void ICvar::Iterator::SetFirst( void )
|
inline void ICvar::Iterator::SetFirst( void )
|
||||||
|
@ -14,6 +14,14 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if !defined( NO_MALLOC_OVERRIDE ) && defined( POSIX )
|
||||||
|
#define NO_MALLOC_OVERRIDE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined( NO_MALLOC_OVERRIDE ) && !defined( NO_HOOK_MALLOC )
|
||||||
|
#define NO_HOOK_MALLOC
|
||||||
|
#endif
|
||||||
|
|
||||||
// Define this in release to get memory tracking even in release builds
|
// Define this in release to get memory tracking even in release builds
|
||||||
//#define USE_MEM_DEBUG 1
|
//#define USE_MEM_DEBUG 1
|
||||||
|
|
||||||
@ -24,11 +32,15 @@
|
|||||||
// Undefine this if using a compiler lacking threadsafe RTTI (like vc6)
|
// Undefine this if using a compiler lacking threadsafe RTTI (like vc6)
|
||||||
#define MEM_DEBUG_CLASSNAME 1
|
#define MEM_DEBUG_CLASSNAME 1
|
||||||
|
|
||||||
#if !defined(STEAM) && !defined(NO_MALLOC_OVERRIDE)
|
|
||||||
|
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
|
#if defined( OSX )
|
||||||
|
#include <malloc/malloc.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "tier0/mem.h"
|
#include "tier0/mem.h"
|
||||||
|
|
||||||
|
#if !defined(STEAM) && !defined(NO_MALLOC_OVERRIDE)
|
||||||
|
|
||||||
struct _CrtMemState;
|
struct _CrtMemState;
|
||||||
|
|
||||||
#define MEMALLOC_VERSION 1
|
#define MEMALLOC_VERSION 1
|
||||||
@ -112,6 +124,13 @@ public:
|
|||||||
virtual void CompactIncremental() = 0;
|
virtual void CompactIncremental() = 0;
|
||||||
|
|
||||||
virtual void OutOfMemory( size_t nBytesAttempted = 0 ) = 0;
|
virtual void OutOfMemory( size_t nBytesAttempted = 0 ) = 0;
|
||||||
|
|
||||||
|
// Region-based allocations
|
||||||
|
virtual void *RegionAlloc( int region, size_t nSize ) = 0;
|
||||||
|
virtual void *RegionAlloc( int region, size_t nSize, const char *pFileName, int nLine ) = 0;
|
||||||
|
|
||||||
|
// Replacement for ::GlobalMemoryStatus which accounts for unused memory in our system
|
||||||
|
virtual void GlobalMemoryStatus( size_t *pUsedMemory, size_t *pFreeMemory ) = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
@ -343,6 +362,45 @@ struct MemAllocFileLine_t
|
|||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#elif defined( POSIX )
|
||||||
|
|
||||||
|
#if defined( OSX )
|
||||||
|
// Mac always aligns allocs, don't need to call posix_memalign which doesn't exist in 10.5.8 which TF2 still needs to run on
|
||||||
|
//inline void *memalign(size_t alignment, size_t size) {void *pTmp=NULL; posix_memalign(&pTmp, alignment, size); return pTmp;}
|
||||||
|
inline void *memalign(size_t alignment, size_t size) {void *pTmp=NULL; pTmp = malloc(size); return pTmp;}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
inline void *_aligned_malloc( size_t nSize, size_t align ) { return memalign( align, nSize ); }
|
||||||
|
inline void _aligned_free( void *ptr ) { free( ptr ); }
|
||||||
|
|
||||||
|
inline void *MemAlloc_Alloc( size_t nSize, const char *pFileName = NULL, int nLine = 0 ) { return malloc( nSize ); }
|
||||||
|
inline void MemAlloc_Free( void *ptr, const char *pFileName = NULL, int nLine = 0 ) { free( ptr ); }
|
||||||
|
|
||||||
|
inline void *MemAlloc_AllocAligned( size_t size, size_t align, const char *pszFile = NULL, int nLine = 0 ) { return memalign( align, size ); }
|
||||||
|
inline void *MemAlloc_AllocAlignedFileLine( size_t size, size_t align, const char *pszFile = NULL, int nLine = 0 ) { return memalign( align, size ); }
|
||||||
|
inline void MemAlloc_FreeAligned( void *pMemBlock, const char *pszFile = NULL, int nLine = 0 ) { free( pMemBlock ); }
|
||||||
|
|
||||||
|
#if defined( OSX )
|
||||||
|
inline size_t _msize( void *ptr ) { return malloc_size( ptr ); }
|
||||||
|
#else
|
||||||
|
inline size_t _msize( void *ptr ) { return malloc_usable_size( ptr ); }
|
||||||
|
#endif
|
||||||
|
|
||||||
|
inline void *MemAlloc_ReallocAligned( void *ptr, size_t size, size_t align )
|
||||||
|
{
|
||||||
|
void *ptr_new_aligned = memalign( align, size );
|
||||||
|
|
||||||
|
if( ptr_new_aligned )
|
||||||
|
{
|
||||||
|
size_t old_size = _msize( ptr );
|
||||||
|
size_t copy_size = ( size < old_size ) ? size : old_size;
|
||||||
|
|
||||||
|
memcpy( ptr_new_aligned, ptr, copy_size );
|
||||||
|
free( ptr );
|
||||||
|
}
|
||||||
|
|
||||||
|
return ptr_new_aligned;
|
||||||
|
}
|
||||||
#endif // !STEAM && !NO_MALLOC_OVERRIDE
|
#endif // !STEAM && !NO_MALLOC_OVERRIDE
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
@ -351,9 +409,13 @@ struct MemAllocFileLine_t
|
|||||||
|
|
||||||
#define MEM_ALLOC_CREDIT_(tag) ((void)0)
|
#define MEM_ALLOC_CREDIT_(tag) ((void)0)
|
||||||
#define MEM_ALLOC_CREDIT() MEM_ALLOC_CREDIT_(__FILE__)
|
#define MEM_ALLOC_CREDIT() MEM_ALLOC_CREDIT_(__FILE__)
|
||||||
|
#define MEM_ALLOC_CREDIT_FUNCTION()
|
||||||
#define MEM_ALLOC_CREDIT_CLASS()
|
#define MEM_ALLOC_CREDIT_CLASS()
|
||||||
#define MEM_ALLOC_CLASSNAME(type) NULL
|
#define MEM_ALLOC_CLASSNAME(type) NULL
|
||||||
|
|
||||||
|
#define MemAlloc_PushAllocDbgInfo( pszFile, line )
|
||||||
|
#define MemAlloc_PopAllocDbgInfo()
|
||||||
|
#define MEMALLOC_DEFINE_EXTERNAL_TRACKING( tag )
|
||||||
#endif // !STEAM && NO_MALLOC_OVERRIDE
|
#endif // !STEAM && NO_MALLOC_OVERRIDE
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
@ -11,6 +11,14 @@
|
|||||||
// to include this potentially multiple times (since we can deactivate debugging
|
// to include this potentially multiple times (since we can deactivate debugging
|
||||||
// by including memdbgoff.h)
|
// by including memdbgoff.h)
|
||||||
|
|
||||||
|
#if !defined( NO_MALLOC_OVERRIDE ) && defined( POSIX )
|
||||||
|
#define NO_MALLOC_OVERRIDE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined( NO_MALLOC_OVERRIDE ) && !defined( NO_HOOK_MALLOC )
|
||||||
|
#define NO_HOOK_MALLOC
|
||||||
|
#endif
|
||||||
|
|
||||||
#if !defined(STEAM) && !defined(NO_MALLOC_OVERRIDE)
|
#if !defined(STEAM) && !defined(NO_MALLOC_OVERRIDE)
|
||||||
|
|
||||||
// SPECIAL NOTE #2: This must be the final include in a .cpp or .h file!!!
|
// SPECIAL NOTE #2: This must be the final include in a .cpp or .h file!!!
|
||||||
|
@ -824,17 +824,7 @@ struct CPUInformation
|
|||||||
tchar* m_szProcessorID; // Processor vendor Identification.
|
tchar* m_szProcessorID; // Processor vendor Identification.
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef __clang__
|
DLL_GLOBAL_EXPORT const CPUInformation& GetCPUInformation(void);
|
||||||
#pragma clang diagnostic push
|
|
||||||
#pragma clang diagnostic ignored "-Wunknown-pragmas"
|
|
||||||
#pragma clang diagnostic ignored "-Wreturn-type-c-linkage"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
PLATFORM_INTERFACE const CPUInformation& GetCPUInformation();
|
|
||||||
|
|
||||||
#ifdef __clang__
|
|
||||||
#pragma clang diagnostic pop
|
|
||||||
#endif
|
|
||||||
|
|
||||||
PLATFORM_INTERFACE void GetCurrentDate( int *pDay, int *pMonth, int *pYear );
|
PLATFORM_INTERFACE void GetCurrentDate( int *pDay, int *pMonth, int *pYear );
|
||||||
|
|
||||||
|
@ -142,7 +142,7 @@ unsigned FASTCALL HashInt( const int n )
|
|||||||
odd = g_nRandomValues[((n >> 8) & 0xff)];
|
odd = g_nRandomValues[((n >> 8) & 0xff)];
|
||||||
|
|
||||||
even = g_nRandomValues[odd ^ (n >> 24)];
|
even = g_nRandomValues[odd ^ (n >> 24)];
|
||||||
odd = g_nRandomValues[even ^ (n >> 16) & 0xff];
|
odd = g_nRandomValues[(even ^ (n >> 16)) & 0xff];
|
||||||
even = g_nRandomValues[odd ^ ((n >> 8) & 0xff)];
|
even = g_nRandomValues[odd ^ ((n >> 8) & 0xff)];
|
||||||
odd = g_nRandomValues[even ^ (n & 0xff)];
|
odd = g_nRandomValues[even ^ (n & 0xff)];
|
||||||
|
|
||||||
@ -163,7 +163,7 @@ unsigned FASTCALL Hash4( const void *pKey )
|
|||||||
odd = g_nRandomValues[((n >> 8) & 0xff)];
|
odd = g_nRandomValues[((n >> 8) & 0xff)];
|
||||||
|
|
||||||
even = g_nRandomValues[odd ^ (n >> 24)];
|
even = g_nRandomValues[odd ^ (n >> 24)];
|
||||||
odd = g_nRandomValues[even ^ (n >> 16) & 0xff];
|
odd = g_nRandomValues[(even ^ (n >> 16)) & 0xff];
|
||||||
even = g_nRandomValues[odd ^ ((n >> 8) & 0xff)];
|
even = g_nRandomValues[odd ^ ((n >> 8) & 0xff)];
|
||||||
odd = g_nRandomValues[even ^ (n & 0xff)];
|
odd = g_nRandomValues[even ^ (n & 0xff)];
|
||||||
|
|
||||||
@ -185,7 +185,7 @@ unsigned FASTCALL Hash8( const void *pKey )
|
|||||||
odd = g_nRandomValues[((n >> 8) & 0xff)];
|
odd = g_nRandomValues[((n >> 8) & 0xff)];
|
||||||
|
|
||||||
even = g_nRandomValues[odd ^ (n >> 24)];
|
even = g_nRandomValues[odd ^ (n >> 24)];
|
||||||
odd = g_nRandomValues[even ^ (n >> 16) & 0xff];
|
odd = g_nRandomValues[(even ^ (n >> 16)) & 0xff];
|
||||||
even = g_nRandomValues[odd ^ ((n >> 8) & 0xff)];
|
even = g_nRandomValues[odd ^ ((n >> 8) & 0xff)];
|
||||||
odd = g_nRandomValues[even ^ (n & 0xff)];
|
odd = g_nRandomValues[even ^ (n & 0xff)];
|
||||||
|
|
||||||
@ -213,7 +213,7 @@ unsigned FASTCALL Hash12( const void *pKey )
|
|||||||
odd = g_nRandomValues[((n >> 8) & 0xff)];
|
odd = g_nRandomValues[((n >> 8) & 0xff)];
|
||||||
|
|
||||||
even = g_nRandomValues[odd ^ (n >> 24)];
|
even = g_nRandomValues[odd ^ (n >> 24)];
|
||||||
odd = g_nRandomValues[even ^ (n >> 16) & 0xff];
|
odd = g_nRandomValues[(even ^ (n >> 16)) & 0xff];
|
||||||
even = g_nRandomValues[odd ^ ((n >> 8) & 0xff)];
|
even = g_nRandomValues[odd ^ ((n >> 8) & 0xff)];
|
||||||
odd = g_nRandomValues[even ^ (n & 0xff)];
|
odd = g_nRandomValues[even ^ (n & 0xff)];
|
||||||
|
|
||||||
@ -247,7 +247,7 @@ unsigned FASTCALL Hash16( const void *pKey )
|
|||||||
odd = g_nRandomValues[((n >> 8) & 0xff)];
|
odd = g_nRandomValues[((n >> 8) & 0xff)];
|
||||||
|
|
||||||
even = g_nRandomValues[odd ^ (n >> 24)];
|
even = g_nRandomValues[odd ^ (n >> 24)];
|
||||||
odd = g_nRandomValues[even ^ (n >> 16) & 0xff];
|
odd = g_nRandomValues[(even ^ (n >> 16)) & 0xff];
|
||||||
even = g_nRandomValues[odd ^ ((n >> 8) & 0xff)];
|
even = g_nRandomValues[odd ^ ((n >> 8) & 0xff)];
|
||||||
odd = g_nRandomValues[even ^ (n & 0xff)];
|
odd = g_nRandomValues[even ^ (n & 0xff)];
|
||||||
|
|
||||||
|
@ -241,7 +241,11 @@ CSysModule *Sys_LoadModule( const char *pModuleName )
|
|||||||
if ( !Q_IsAbsolutePath( pModuleName ) )
|
if ( !Q_IsAbsolutePath( pModuleName ) )
|
||||||
{
|
{
|
||||||
// full path wasn't passed in, using the current working dir
|
// full path wasn't passed in, using the current working dir
|
||||||
_getcwd( szCwd, sizeof( szCwd ) );
|
if (!_getcwd( szCwd, sizeof( szCwd ) ))
|
||||||
|
{
|
||||||
|
Msg("Failed to load %s\n", pModuleName);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
if ( IsX360() )
|
if ( IsX360() )
|
||||||
{
|
{
|
||||||
int i = CommandLine()->FindParm( "-basedir" );
|
int i = CommandLine()->FindParm( "-basedir" );
|
||||||
|
Reference in New Issue
Block a user