diff options
Diffstat (limited to 'tex/context/base/mkiv/lxml-tab.lua')
-rw-r--r-- | tex/context/base/mkiv/lxml-tab.lua | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/tex/context/base/mkiv/lxml-tab.lua b/tex/context/base/mkiv/lxml-tab.lua index 1ef82d74d..3af4974d3 100644 --- a/tex/context/base/mkiv/lxml-tab.lua +++ b/tex/context/base/mkiv/lxml-tab.lua @@ -1427,9 +1427,17 @@ local function copy(old,p) new[k] = t elseif k == "dt" then v.__p__ = nil - v = copy(v,new) - new[k] = v - v.__p__ = p + local t = { } + for i=1,#v do + local vi = v[i] + if type(vi) == "table" then + t[i] = copy(vi,new) + else + t[i] = vi + end + end + new[k] = t + t.__p__ = p else new[k] = v -- so we also share entities, etc in root end |