diff options
Diffstat (limited to 'Runtime/Lua/LuaBind/LuaBindLFunction.cpp')
-rw-r--r-- | Runtime/Lua/LuaBind/LuaBindLFunction.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/Runtime/Lua/LuaBind/LuaBindLFunction.cpp b/Runtime/Lua/LuaBind/LuaBindLFunction.cpp index b468897..1e7b75f 100644 --- a/Runtime/Lua/LuaBind/LuaBindLFunction.cpp +++ b/Runtime/Lua/LuaBind/LuaBindLFunction.cpp @@ -6,6 +6,7 @@ namespace LuaBind LuaFunction::LuaFunction(const char* func) { + argc = 0; method = func; } @@ -54,10 +55,13 @@ namespace LuaBind { if (state.GetGlobalField(method)) { - int funcIdx = -1 - argc; - lua_replace(state, funcIdx); - state.Call(argc, nReturns); + if (state.IsType(-1, LUA_TFUNCTION)) { + int funcIdx = -1 - argc; + lua_insert(state, funcIdx); + state.Call(argc, nReturns); + } } + argc = 0; } }
\ No newline at end of file |