Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
hanoi2005
redis
提交
a0ba7b3f
R
redis
项目概览
hanoi2005
/
redis
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
redis
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a0ba7b3f
编写于
1月 20, 2015
作者:
A
antirez
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Panic on recursive calls to luaRedisGenericCommand().
Related to issue #2302.
上级
e7aa5fb5
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
14 addition
and
0 deletion
+14
-0
src/scripting.c
src/scripting.c
+14
-0
未找到文件。
src/scripting.c
浏览文件 @
a0ba7b3f
...
...
@@ -213,11 +213,22 @@ int luaRedisGenericCommand(lua_State *lua, int raise_error) {
static
int
argv_size
=
0
;
static
robj
*
cached_objects
[
LUA_CMD_OBJCACHE_SIZE
];
static
size_t
cached_objects_len
[
LUA_CMD_OBJCACHE_SIZE
];
static
int
inuse
=
0
;
/* Recursive calls detection. */
/* By using Lua debug hooks it is possible to trigger a recursive call
* to luaRedisGenericCommand(), which normally should never happen.
* To make this function reentrant is futile and makes it slower, but
* we should at least detect such a misuse, and abort. */
if
(
inuse
)
{
redisPanic
(
"luaRedisGenericCommand() recursive call detected. Are you doing funny stuff with Lua debug hooks?"
);
}
inuse
++
;
/* Require at least one argument */
if
(
argc
==
0
)
{
luaPushError
(
lua
,
"Please specify at least one argument for redis.call()"
);
inuse
--
;
return
1
;
}
...
...
@@ -272,6 +283,7 @@ int luaRedisGenericCommand(lua_State *lua, int raise_error) {
}
luaPushError
(
lua
,
"Lua redis() command arguments must be strings or integers"
);
inuse
--
;
return
1
;
}
...
...
@@ -408,8 +420,10 @@ cleanup:
* return the plain error. */
lua_pushstring
(
lua
,
"err"
);
lua_gettable
(
lua
,
-
2
);
inuse
--
;
return
lua_error
(
lua
);
}
inuse
--
;
return
1
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录