diff options
author | antirez <antirez@gmail.com> | 2013-04-29 12:00:54 +0200 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2013-04-29 12:02:04 +0200 |
commit | 395e6a58722f384662b9ce3019cd7d475ddda874 (patch) | |
tree | f59619f5e9e6b811ab258bc283341f73b894763e /deps/lua/src/lstrlib.c | |
parent | 34a57a5b52c87503c25dc372f3230fef17a3ecca (diff) | |
download | redis-395e6a58722f384662b9ce3019cd7d475ddda874.tar.gz |
Lua updated to version 5.1.5.
Diffstat (limited to 'deps/lua/src/lstrlib.c')
-rw-r--r-- | deps/lua/src/lstrlib.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/deps/lua/src/lstrlib.c b/deps/lua/src/lstrlib.c index 1b4763d4e..7a03489be 100644 --- a/deps/lua/src/lstrlib.c +++ b/deps/lua/src/lstrlib.c @@ -1,5 +1,5 @@ /* -** $Id: lstrlib.c,v 1.132.1.4 2008/07/11 17:27:21 roberto Exp $ +** $Id: lstrlib.c,v 1.132.1.5 2010/05/14 15:34:19 roberto Exp $ ** Standard library for string operations and pattern-matching ** See Copyright Notice in lua.h */ @@ -754,6 +754,7 @@ static void addintlen (char *form) { static int str_format (lua_State *L) { + int top = lua_gettop(L); int arg = 1; size_t sfl; const char *strfrmt = luaL_checklstring(L, arg, &sfl); @@ -768,7 +769,8 @@ static int str_format (lua_State *L) { else { /* format item */ char form[MAX_FORMAT]; /* to store the format (`%...') */ char buff[MAX_ITEM]; /* to store the formatted item */ - arg++; + if (++arg > top) + luaL_argerror(L, arg, "no value"); strfrmt = scanformat(L, strfrmt, form); switch (*strfrmt++) { case 'c': { |