Fixed RemoveChild and RemoveAllChildren lua functions to delete the children instead of leaking memory.

This commit is contained in:
Kyzentun
2015-02-27 18:33:17 -07:00
parent 7c2fd0153c
commit d35933f1e5
2 changed files with 40 additions and 7 deletions
+31
View File
@@ -4,6 +4,37 @@ The StepMania 5 Changelog covers all post-sm-ssc changes. For a list of changes
from StepMania 4 alpha 5 to sm-ssc v1.2.5, see Changelog_sm-ssc.txt.
________________________________________________________________________________
2015/02/27
----------
* [ActorFrame] Fixed RemoveChild and RemoveAllChildren lua functions to
delete the children instead of leaking memory. [kyzentun]
2015/02/26
----------
* [PaneDisplay] Changed to print an error when metrics or player number are
omitted instead of crashing. [kyzentun]
* [Screen] Fixed crash when AddInputCallback is passed nil. [kyzentun]
2015/02/22
----------
* [BitmapText] Place characters of right-to-left alphabets correctly.
(untested) [roothorick]
================================================================================
StepMania 5.0.6 | 20150217
--------------------------------------------------------------------------------
2015/02/16
----------
* [EditMode] Fixed mistake in TimingData that broke editing bpms. [kyzentun]
Fixed crash when deleting steps. [kyzentun]
* [InputMapper] Backslash can be mapped now. [kyzentun]
================================================================================
StepMania 5.0.5 | 20150214
--------------------------------------------------------------------------------
2015/02/12
----------
* [InputMapper] Added D-Force Automappings [shakesoda]
+9 -7
View File
@@ -721,14 +721,16 @@ public:
static int RemoveChild( T* p, lua_State *L )
{
Actor *pChild = p->GetChild( SArg(1) );
if( pChild )
p->RemoveChild( pChild );
else
lua_pushnil( L );
return 1;
Actor *child = p->GetChild(SArg(1));
if(child)
{
p->RemoveChild(child);
SAFE_DELETE(child);
}
COMMON_RETURN_SELF;
}
static int RemoveAllChildren( T* p, lua_State *L ) { p->RemoveAllChildren( ); COMMON_RETURN_SELF; }
static int RemoveAllChildren( T* p, lua_State *L )
{ p->DeleteAllChildren(); COMMON_RETURN_SELF; }
LunaActorFrame()
{