summaryrefslogtreecommitdiff
path: root/lib/gall/util.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gall/util.lua')
-rw-r--r--lib/gall/util.lua5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/gall/util.lua b/lib/gall/util.lua
index d6c5297..48181be 100644
--- a/lib/gall/util.lua
+++ b/lib/gall/util.lua
@@ -10,14 +10,15 @@ local function deep_copy(t, memo)
if not memo then memo = {} end
if memo[t] then return memo[t] end
local ret = {}
+ memo[t] = ret
local kk, vv
for k, v in pairs(t) do
kk, vv = k, v
if type(k) == "table" then
- kk = _deep_copy(k)
+ kk = deep_copy(k, memo)
end
if type(v) == "table" then
- vv = _deep_copy(v)
+ vv = deep_copy(v, memo)
end
ret[kk] = vv
end