summaryrefslogtreecommitdiff
path: root/deps/lua
diff options
context:
space:
mode:
authorsundb <sundbcn@gmail.com>2022-08-14 16:50:18 +0800
committerGitHub <noreply@github.com>2022-08-14 11:50:18 +0300
commit8aad2ac35201fd6feadb6f59e7cc0c2afb19129b (patch)
treeab68434de69aab23235f9cd739e7f31d4c5b8776 /deps/lua
parent1f600efd013b9b01d683ba32f7630a5cf51ada43 (diff)
downloadredis-8aad2ac35201fd6feadb6f59e7cc0c2afb19129b.tar.gz
Add missing lua_pop in luaGetFromRegistry (#11097)
This pr mainly has the following four changes: 1. Add missing lua_pop in `luaGetFromRegistry`. This bug affects `redis.register_function`, where `luaGetFromRegistry` in `luaRegisterFunction` will return null when we call `redis.register_function` nested. .e.g ``` FUNCTION LOAD "#!lua name=mylib \n local lib=redis \n lib.register_function('f2', function(keys, args) lib.register_function('f1', function () end) end)" fcall f2 0 ```` But since we exit when luaGetFromRegistry returns null, it does not cause the stack to grow indefinitely. 3. When getting `REGISTRY_RUN_CTX_NAME` from the registry, use `serverAssert` instead of error return. Since none of these lua functions are registered at the time of function load, scriptRunCtx will never be NULL. 4. Add `serverAssert` for `luaLdbLineHook`, `luaEngineLoadHook`. 5. Remove `luaGetFromRegistry` from `redis_math_random` and `redis_math_randomseed`, it looks like they are redundant.
Diffstat (limited to 'deps/lua')
0 files changed, 0 insertions, 0 deletions