aboutsummaryrefslogtreecommitdiff
path: root/ltablib.c
diff options
context:
space:
mode:
Diffstat (limited to 'ltablib.c')
-rw-r--r--ltablib.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/ltablib.c b/ltablib.c
index ace60547..588bf40d 100644
--- a/ltablib.c
+++ b/ltablib.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: ltablib.c,v 1.91 2015/12/14 11:57:38 roberto Exp roberto $ 2** $Id: ltablib.c,v 1.92 2016/02/08 12:55:19 roberto Exp roberto $
3** Library for Table Manipulation 3** Library for Table Manipulation
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -139,7 +139,7 @@ static int tmove (lua_State *L) {
139 n = e - f + 1; /* number of elements to move */ 139 n = e - f + 1; /* number of elements to move */
140 luaL_argcheck(L, t <= LUA_MAXINTEGER - n + 1, 4, 140 luaL_argcheck(L, t <= LUA_MAXINTEGER - n + 1, 4,
141 "destination wrap around"); 141 "destination wrap around");
142 if (t > e || t <= f || tt != 1) { 142 if (t > e || t <= f || (tt != 1 && !lua_compare(L, 1, tt, LUA_OPEQ))) {
143 for (i = 0; i < n; i++) { 143 for (i = 0; i < n; i++) {
144 lua_geti(L, 1, f + i); 144 lua_geti(L, 1, f + i);
145 lua_seti(L, tt, t + i); 145 lua_seti(L, tt, t + i);
@@ -152,7 +152,7 @@ static int tmove (lua_State *L) {
152 } 152 }
153 } 153 }
154 } 154 }
155 lua_pushvalue(L, tt); /* return "to table" */ 155 lua_pushvalue(L, tt); /* return destination table */
156 return 1; 156 return 1;
157} 157}
158 158