From: Vsevolod Stakhov Date: Tue, 25 Aug 2020 14:41:46 +0000 (+0100) Subject: [Minor] Lua_tensor: Fix newindex row assignment X-Git-Tag: 2.6~116 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8a2cad181848bc7825001bb1a418aa1982c566ab;p=thirdparty%2Frspamd.git [Minor] Lua_tensor: Fix newindex row assignment --- diff --git a/src/lua/lua_tensor.c b/src/lua/lua_tensor.c index 09a10cabce..f8386d6f3d 100644 --- a/src/lua/lua_tensor.c +++ b/src/lua/lua_tensor.c @@ -383,7 +383,7 @@ lua_tensor_newindex (lua_State *L) if (t->ndims == 1) { /* Individual element */ - if (idx <= t->dim[0]) { + if (idx <= t->dim[0] && idx > 0) { rspamd_tensor_num_t value = lua_tonumber (L, 3), old; old = t->data[idx - 1]; @@ -405,8 +405,9 @@ lua_tensor_newindex (lua_State *L) if (row) { if (row->ndims == 1) { if (row->dim[0] == t->dim[1]) { - if (idx <= t->dim[0]) { - memcpy (&t->data[idx * t->dim[0]], + if (idx > 0 && idx <= t->dim[0]) { + idx --; /* Zero based index */ + memcpy (&t->data[idx * t->dim[1]], row->data, t->dim[1] * sizeof (rspamd_tensor_num_t));