diff options
author | Kae <80987908+Novaenia@users.noreply.github.com> | 2025-05-14 13:13:23 +1000 |
---|---|---|
committer | Kae <80987908+Novaenia@users.noreply.github.com> | 2025-05-14 13:13:23 +1000 |
commit | 21c0682e3f98ee8afacff7be90828b05bc6ccb60 (patch) | |
tree | 5a256787d1080809f57aeb5fb295e03f8a426b8b /source/core | |
parent | a840f75d41be4765a476b1043b6a38f350d800e6 (diff) |
fix underflow on input clipboard allow state
Diffstat (limited to 'source/core')
-rw-r--r-- | source/core/StarLua.cpp | 4 | ||||
-rw-r--r-- | source/core/StarLua.hpp | 1 |
2 files changed, 4 insertions, 1 deletions
diff --git a/source/core/StarLua.cpp b/source/core/StarLua.cpp index 91aebab..201f238 100644 --- a/source/core/StarLua.cpp +++ b/source/core/StarLua.cpp @@ -125,7 +125,9 @@ LuaTable LuaContext::createTable() { LuaNullEnforcer::LuaNullEnforcer(LuaEngine& engine) : m_engine(&engine) { ++m_engine->m_nullTerminated; }; -LuaNullEnforcer::~LuaNullEnforcer() { --m_engine->m_nullTerminated; }; +LuaNullEnforcer::LuaNullEnforcer(LuaNullEnforcer&& other) { m_engine = take(other.m_engine); }; + +LuaNullEnforcer::~LuaNullEnforcer() { if (m_engine) --m_engine->m_nullTerminated; }; LuaValue LuaConverter<Json>::from(LuaEngine& engine, Json const& v) { if (v.isType(Json::Type::Null)) { diff --git a/source/core/StarLua.hpp b/source/core/StarLua.hpp index fa777c2..1f0dc43 100644 --- a/source/core/StarLua.hpp +++ b/source/core/StarLua.hpp @@ -414,6 +414,7 @@ struct LuaNullTermWrapper : T { class LuaNullEnforcer { public: LuaNullEnforcer(LuaEngine& engine); + LuaNullEnforcer(LuaNullEnforcer&&); ~LuaNullEnforcer(); private: LuaEngine* m_engine; |