- Removed generational garbage collection from the string pool because it didn't
actually work. - Turned the list of TabCommands into a TArray because I saw lots of console commands in the memory leak report at exit. Then I realized those were actually key bindings, so I changed the Bindings and DoubleBindings arrays into FString arrays. - Fixed: FStringCVar was missing a destructor. - Added TArray::Insert(). - Fixed: TArray::Delete() used memmove(). - Renamed Malloc(), Realloc(), and Calloc() to M_Malloc(), M_Realloc(), and M_Calloc() so that the debug versions can be defined as macros. - Enabled the CRT's memory leak detection in WinMain(). - Moved contents of PO_DeInit() into P_FreeLevelData(). - Removed "PolyBlockMap = NULL;" from P_SetupLevel(), because the P_FreeLevelData() call it makes next does the exact same thing, but also freeing it if needed. - Fixed: Unneeded memcpy in UnpackUserCmd() when ucmd and basis are the same SVN r75 (trunk)
This commit is contained in:
parent
ea3b76815d
commit
c8cdb52863
38 changed files with 264 additions and 242 deletions
|
|
@ -149,8 +149,8 @@ void P_InitSwitchList ()
|
|||
((gameinfo.maxSwitch & ~15) == (list_p[18] & ~15)) &&
|
||||
TexMan.CheckForTexture (list_p /* .name1 */, FTexture::TEX_Wall, texflags) >= 0)
|
||||
{
|
||||
def1 = (FSwitchDef *)Malloc (sizeof(FSwitchDef));
|
||||
def2 = (FSwitchDef *)Malloc (sizeof(FSwitchDef));
|
||||
def1 = (FSwitchDef *)M_Malloc (sizeof(FSwitchDef));
|
||||
def2 = (FSwitchDef *)M_Malloc (sizeof(FSwitchDef));
|
||||
def1->PreTexture = def2->u.Textures[2] = TexMan.CheckForTexture (list_p /* .name1 */, FTexture::TEX_Wall, texflags);
|
||||
def2->PreTexture = def1->u.Textures[2] = TexMan.CheckForTexture (list_p + 9, FTexture::TEX_Wall, texflags);
|
||||
def1->Sound = def2->Sound = 0;
|
||||
|
|
@ -300,7 +300,7 @@ void P_ProcessSwitchDef ()
|
|||
// it to the original texture without doing anything interesting
|
||||
if (def2 == NULL)
|
||||
{
|
||||
def2 = (FSwitchDef *)Malloc (sizeof(FSwitchDef));
|
||||
def2 = (FSwitchDef *)M_Malloc (sizeof(FSwitchDef));
|
||||
def2->Sound = def1->Sound;
|
||||
def2->NumFrames = 1;
|
||||
def2->u.Times[0] = 0;
|
||||
|
|
@ -399,7 +399,7 @@ FSwitchDef *ParseSwitchDef (bool ignoreBad)
|
|||
{
|
||||
return NULL;
|
||||
}
|
||||
def = (FSwitchDef *)Malloc (myoffsetof (FSwitchDef, u.Times[0]) + numframes * 6);
|
||||
def = (FSwitchDef *)M_Malloc (myoffsetof (FSwitchDef, u.Times[0]) + numframes * 6);
|
||||
def->Sound = sound;
|
||||
def->NumFrames = numframes;
|
||||
memcpy (&def->u.Times[0], times, numframes * 4);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue