Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
3ac1dad7
Commit
3ac1dad7
authored
Jun 11, 2014
by
Salvatore Sanfilippo
Browse files
Merge pull request #1804 from mattsta/lua-regression-1118
Scripting: Fix regression from #1118
parents
8ef79e72
76efe122
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/scripting.c
View file @
3ac1dad7
...
...
@@ -200,6 +200,11 @@ void luaSortArray(lua_State *lua) {
lua_pop
(
lua
,
1
);
/* Stack: array (sorted) */
}
int
luaReallyIsString
(
lua_State
*
L
,
int
index
)
{
int
t
=
lua_type
(
L
,
index
);
return
t
==
LUA_TSTRING
;
}
#define LUA_CMD_OBJCACHE_SIZE 32
#define LUA_CMD_OBJCACHE_MAX_LEN 64
int
luaRedisGenericCommand
(
lua_State
*
lua
,
int
raise_error
)
{
...
...
@@ -234,7 +239,7 @@ int luaRedisGenericCommand(lua_State *lua, int raise_error) {
size_t
obj_len
;
char
dbuf
[
64
];
if
(
lua_isnumber
(
lua
,
j
+
1
))
{
if
(
!
luaReallyIsString
(
lua
,
j
+
1
)
&&
lua_isnumber
(
lua
,
j
+
1
))
{
/* We can't use lua_tolstring() for number -> string conversion
* since Lua uses a format specifier that loses precision. */
lua_Number
num
=
lua_tonumber
(
lua
,
j
+
1
);
...
...
tests/unit/scripting.tcl
View file @
3ac1dad7
...
...
@@ -347,6 +347,13 @@ start_server {tags {"scripting"}} {
return redis.call
(
"get"
,
"foo"
)
}
0
}
{
9007199254740991
}
test
{
String containing number precision test
(
regression of issue #1118
)}
{
r eval
{
redis.call
(
"set"
,
"key"
,
"12039611435714932082"
)
return redis.call
(
"get"
,
"key"
)
}
0
}
{
12039611435714932082
}
}
# Start a new server since the last test in this stanza will kill the
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment