From b9fb73ce0ba993c9873cf0022be7bb68766c8d83 Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Mon, 7 Aug 2023 14:42:30 +0100 Subject: [PATCH] [Fix] Fix merge table utility --- lualib/lua_util.lua | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/lualib/lua_util.lua b/lualib/lua_util.lua index a68da0d59..6964b0f00 100644 --- a/lualib/lua_util.lua +++ b/lualib/lua_util.lua @@ -627,10 +627,23 @@ exports.table_cmp = table_cmp -- Merge two tables --]] local function table_merge(t1, t2) + local res = {} + local nidx = 1 -- for numeric indicies + local it_func = function(k, v) + if type(k) == 'number' then + res[nidx] = v + nidx = nidx + 1 + else + res[k] = v + end + end + for k, v in pairs(t1) do + it_func(k, v) + end for k, v in pairs(t2) do - t1[k] = v + it_func(k, v) end - return t1 + return res end exports.table_merge = table_merge -- 2.39.5