diff options
author | chai <chaifix@163.com> | 2018-11-22 12:23:12 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2018-11-22 12:23:12 +0800 |
commit | 7a20483f06624e82feb129c9e4c8fa13881a6a9f (patch) | |
tree | 82707e7546fe14d1b781a2e15f65f6ef976ac322 /src/lua/common/je_lua_reference.cpp | |
parent | 7256d216ecf154d6418c1f3b36dd58a2b69b7827 (diff) |
*修改lua bind
Diffstat (limited to 'src/lua/common/je_lua_reference.cpp')
-rw-r--r-- | src/lua/common/je_lua_reference.cpp | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/src/lua/common/je_lua_reference.cpp b/src/lua/common/je_lua_reference.cpp index 05dc82b..37ed441 100644 --- a/src/lua/common/je_lua_reference.cpp +++ b/src/lua/common/je_lua_reference.cpp @@ -1,7 +1,6 @@ -#include "je_lua_reference.h" +#include "common/je_lua.h" -#include "LuaJIT/lua.hpp" -#include "libraries/luax/luax.h" +#include "je_lua_reference.h" namespace JinEngine { @@ -12,7 +11,10 @@ namespace JinEngine : mL(L) { luax_pushvalue(mL, i); - mIndex = luax_ref(mL, LUA_REGISTRYINDEX); + luax_getreferencestable(L); + luax_pushvalue(mL, -2); + mIndex = luax_ref(mL, -2); + luax_pop(L, 3); } LuaRef::~LuaRef() @@ -22,12 +24,16 @@ namespace JinEngine void LuaRef::unref() { - luax_unref(mL, LUA_REGISTRYINDEX, mIndex); + luax_getreferencestable(mL); + luax_unref(mL, -1, mIndex); + luax_pop(mL, 1); } void LuaRef::push() { - luax_rawgeti(mL, LUA_REGISTRYINDEX, mIndex); + luax_getreferencestable(mL); + luax_rawgeti(mL, -1, mIndex); + luax_remove(mL, -2); } } |