From 1749779ca87110c2afb9aa450d5ceec429632aa7 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Wed, 20 Sep 2006 23:47:08 +0000 Subject: [PATCH] merge ResetState into ctor --- stepmania/src/LuaManager.cpp | 54 +++++++++++++++++------------------- stepmania/src/LuaManager.h | 3 -- 2 files changed, 25 insertions(+), 32 deletions(-) diff --git a/stepmania/src/LuaManager.cpp b/stepmania/src/LuaManager.cpp index 2ac83c8da3..0944032e13 100644 --- a/stepmania/src/LuaManager.cpp +++ b/stepmania/src/LuaManager.cpp @@ -192,7 +192,31 @@ LuaManager::LuaManager() L = NULL; m_pLock = new RageMutex( "Lua" ); - ResetState(); + m_pLock->Lock(); + + if( L != NULL ) + { + LuaReference::BeforeResetAll(); + + lua_close( L ); + } + + L = lua_open(); + ASSERT( L ); + + lua_atpanic( L, LuaPanic ); + + luaopen_base( L ); + luaopen_math( L ); + luaopen_string( L ); + luaopen_table( L ); + lua_settop(L, 0); // luaopen_* pushes stuff onto the stack that we don't need + + RegisterTypes(); + + LuaReference::AfterResetAll(); + + m_pLock->Unlock(); } LuaManager::~LuaManager() @@ -245,34 +269,6 @@ void LuaManager::RegisterTypes() } } -void LuaManager::ResetState() -{ - m_pLock->Lock(); - - if( L != NULL ) - { - LuaReference::BeforeResetAll(); - - lua_close( L ); - } - - L = lua_open(); - ASSERT( L ); - - lua_atpanic( L, LuaPanic ); - - luaopen_base( L ); - luaopen_math( L ); - luaopen_string( L ); - luaopen_table( L ); - lua_settop(L, 0); // luaopen_* pushes stuff onto the stack that we don't need - - RegisterTypes(); - - LuaReference::AfterResetAll(); - - m_pLock->Unlock(); -} namespace { diff --git a/stepmania/src/LuaManager.h b/stepmania/src/LuaManager.h index 18782911aa..d4046f071e 100644 --- a/stepmania/src/LuaManager.h +++ b/stepmania/src/LuaManager.h @@ -29,9 +29,6 @@ public: Lua *Get(); void Release( Lua *&p ); - /* Reset the environment, freeing any globals left over by previously executed scripts. */ - void ResetState(); - /* Register all subscribing types. There's no harm in registering when already registered. */ void RegisterTypes();