end
end
function get_dir_count()
- for i=tex_nest.ptr, 1, -1 do
- local h = tex_nest[i].head.next
- if h then
- local t = get_dir_count_inner(h)
- if t~=0 then return t end
- end
- end
- return page_direction
+ for i=tex_nest.ptr, 1, -1 do
+ local h = tex_nest[i].head.next
+ if h then
+ local t = get_dir_count_inner(h)
+ if t~=0 then return t end
+ end
+ end
+ return page_direction
end
function get_adjust_dir_count()
for i=tex_nest.ptr, 1, -1 do
start_time_measure('box_primitive_hook')
local list_dir = get_dir_count()%dir_math_mod
local b = getbox(tex_getcount('ltj@tempcnta'))
- if b then
+ if b and getlist(to_direct(b)) then
local box_dir = get_box_dir(to_direct(b), dir_yoko)
if box_dir%dir_math_mod ~= list_dir then
ltjb.package_error(
local list_dir = get_dir_count()
local a = tex_nest[tex_nest.ptr].tail
local ad = to_direct(a)
+ if (not a) or getid(ad)~=id_ins then
+ a = node.tail(tex.lists.page_head); ad = to_direct(a)
+ end
if a and getid(ad)==id_ins then
local h = getfield(ad, 'head')
if getid(h)==id_whatsit and
finalize_inner(shipout_temp)
setbox('global', "AtBeginShipoutBox", copy(getlist(shipout_temp)))
setfield(shipout_temp, 'head',nil)
-
-- garbage collect
--local m = collectgarbage('count')
--if m>lua_mem_kb+20480 then