- Merged a lot of these static destructor-only structs into regular
functions added to the exit chain with atterm so that they can be called in a deterministic order and not whatever order the linker decides to put them in. - Fixed: DCajunMaster did not free its getspawned. - Fixed: P_FreeLevelData() did not free ACS scripts. - Fixed: Level snapshots were not freed at exit. - Fixed: The save/load menu list was not freed at exit. - Fixed: FCompressedMemFile needs a destructor to free the m_ImplodedBuffer. - Fixed: G_DoLoadGame() did not free the engine string. - Fixed: M_ReadSaveStrings() did not free the engine string. - Fixed: Processing DEM_SAVEGAME did not free the pathname string. - Added a check for truncated flats to FFlatTexture::MakeTexture() because Heretic's F_SKY1 is only four bytes long. - Added a dump of the offending state to the "Cannot find state..." diagnostic. - Fixed: FCompressedFile did not initialize m_Mode in its default constructor. - Fixed: Heretic and Hexen status bars did not initialize ArtiRefresh. - Fixed: PNGHandle destructor should use delete[] to free TextChunks. SVN r111 (trunk)
This commit is contained in:
parent
01441cd4f0
commit
8fcf93d65a
68 changed files with 866 additions and 485 deletions
|
|
@ -149,29 +149,6 @@ FActionMap ActionMaps[] =
|
|||
|
||||
#define NUM_ACTIONS countof(ActionMaps)
|
||||
|
||||
static struct AliasKiller
|
||||
{
|
||||
~AliasKiller()
|
||||
{
|
||||
// Scan the hash table for all aliases and delete them.
|
||||
// Regular commands will be destroyed automatically.
|
||||
for (size_t i = 0; i < countof(Commands); ++i)
|
||||
{
|
||||
FConsoleCommand *cmd = Commands[i];
|
||||
|
||||
while (cmd != NULL)
|
||||
{
|
||||
FConsoleCommand *next = cmd->m_Next;
|
||||
if (cmd->IsAlias())
|
||||
{
|
||||
delete cmd;
|
||||
}
|
||||
cmd = next;
|
||||
}
|
||||
}
|
||||
}
|
||||
} KillTheAliases;
|
||||
|
||||
|
||||
|
||||
IMPLEMENT_CLASS (DWaitingCommand)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue