diff options
Diffstat (limited to 'tex/context/base/node-shp.lua')
-rw-r--r-- | tex/context/base/node-shp.lua | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/tex/context/base/node-shp.lua b/tex/context/base/node-shp.lua index af13973c0..df1a3e585 100644 --- a/tex/context/base/node-shp.lua +++ b/tex/context/base/node-shp.lua @@ -44,6 +44,9 @@ local find_tail = nuts.tail local getfield = nuts.getfield local setfield = nuts.setfield +local setsetlink = nuts.setlink +local setsetprev = nuts.setprev +local setsetnext = nuts.setnext local getid = nuts.getid local getnext = nuts.getnext local getprev = nuts.getprev @@ -51,13 +54,12 @@ local getlist = nuts.getlist local getsubtype = nuts.getsubtype local removables = { - [whatsitcodes.open] = true, - [whatsitcodes.close] = true, - [whatsitcodes.write] = true, - [whatsitcodes.savepos or - whatsitcodes.pdfsavepos] = true, -- for now - [whatsitcodes.latelua] = true, - [whatsitcodes.pdfdest] = true, + [whatsitcodes.open] = true, + [whatsitcodes.close] = true, + [whatsitcodes.write] = true, + [whatsitcodes.savepos] = true, + [whatsitcodes.latelua] = true, + [whatsitcodes.pdfdest] = true, } -- About 10% of the nodes make no sense for the backend. By (at least) @@ -87,14 +89,12 @@ local function cleanup_redundant(head) -- better name is: flatten_page remove_node(head,start,true) end if next then - setfield(tail,"next",next) - setfield(next,"prev",tail) + setlink(tail,next) end if prev then - setfield(prev,"next",replace) - setfield(replace,"prev",prev) + setlink(prev,replace) else - setfield(replace,"prev",nil) -- to be sure + setprev(replace) -- to be sure end start = next elseif wipedisc then |