diff options
| author | “pengxuanzheng” <[email protected]> | 2022-07-15 09:21:23 +0000 |
|---|---|---|
| committer | “pengxuanzheng” <[email protected]> | 2022-07-15 09:21:23 +0000 |
| commit | ed86120fa4072ce922550ae1304e889e15694ef6 (patch) | |
| tree | e0ab5367a9e1c5647df26e37fdbb7daa6b245283 | |
| parent | 96b60167ad8556589187623a70d96c13350b4582 (diff) | |
✨ feat(TSG-11123): 修复lua_cache_exec context为空的时候,即使设置了userdata也会获取不到的情况v1.1.2
| -rw-r--r-- | src/tsg_lua_func.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/tsg_lua_func.cpp b/src/tsg_lua_func.cpp index 2d6345f..463942c 100644 --- a/src/tsg_lua_func.cpp +++ b/src/tsg_lua_func.cpp @@ -1709,12 +1709,13 @@ int lua_cache_exec(tsg_lua_handle L, size_t script_id, struct lua_data_t in, voi return ERR_LUA_PRIVATE_INFO_IS_NIL; } + lua_info->userdata = userdata; if (context != NULL && context->context_id != LUA_REFNIL && context->context_id != LUA_NOREF) { - lua_info->userdata = userdata; lua_getglobal(L, lua_info->lua_name); lua_rawgeti(L, LUA_REGISTRYINDEX, context->context_id); lua_setfield(L, -2, "context"); + lua_settop(L, 0); } return tsg_lua_cache_exec(L, script_id, in.data, in.len, outvalue->str, &outvalue->len, &outvalue->type); |
