aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/3rdparty/buildvm/buildvm.exebin121856 -> 123392 bytes
-rw-r--r--src/3rdparty/minilua/minilua.exebin209920 -> 219136 bytes
-rw-r--r--src/lua/common/je_lua_proxy.h15
3 files changed, 6 insertions, 9 deletions
diff --git a/src/3rdparty/buildvm/buildvm.exe b/src/3rdparty/buildvm/buildvm.exe
index 3d72985..32a8f53 100644
--- a/src/3rdparty/buildvm/buildvm.exe
+++ b/src/3rdparty/buildvm/buildvm.exe
Binary files differ
diff --git a/src/3rdparty/minilua/minilua.exe b/src/3rdparty/minilua/minilua.exe
index 33e9227..a245b88 100644
--- a/src/3rdparty/minilua/minilua.exe
+++ b/src/3rdparty/minilua/minilua.exe
Binary files differ
diff --git a/src/lua/common/je_lua_proxy.h b/src/lua/common/je_lua_proxy.h
index 2914533..5541a5a 100644
--- a/src/lua/common/je_lua_proxy.h
+++ b/src/lua/common/je_lua_proxy.h
@@ -29,13 +29,7 @@ namespace JinEngine
shared = nullptr;
}
}
-/*
- void retain()
- {
- if (shared != nullptr)
- shared->retain();
- }
-*/
+
template<class T>
Shared<T>& getShared()
{
@@ -62,9 +56,12 @@ namespace JinEngine
};
- inline Proxy* luax_newinstance(lua_State* L, const char* type)
+ inline Proxy* luax_newinstance(lua_State* L, const char* type, SharedBase* shared = nullptr)
{
- return static_cast<Proxy*>(luax_newinstance(L, type, sizeof(Proxy)));
+ Proxy* proxy = static_cast<Proxy*>(luax_newinstance(L, type, sizeof(Proxy)));
+ if(shared)
+ proxy->bind(shared);
+ return proxy;
}
} // namespace Lua