summaryrefslogtreecommitdiff
path: root/tex/generic/context/luatex/luatex-fonts-merged.lua
diff options
context:
space:
mode:
Diffstat (limited to 'tex/generic/context/luatex/luatex-fonts-merged.lua')
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua13
1 files changed, 10 insertions, 3 deletions
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 0af016d2a..d0aa965f3 100644
--- a/tex/generic/context/luatex/luatex-fonts-merged.lua
+++ b/tex/generic/context/luatex/luatex-fonts-merged.lua
@@ -1,6 +1,6 @@
-- merged file : c:/data/develop/context/sources/luatex-fonts-merged.lua
-- parent file : c:/data/develop/context/sources/luatex-fonts.lua
--- merge date : 2020-05-25 23:36
+-- merge date : 2020-06-09 18:53
do -- begin closure to overcome local limits and interference
@@ -27999,6 +27999,7 @@ local function chaindisk(head,start,dataset,sequence,rlmode,skiphash,ck)
local sweepnode=sweepnode
local sweeptype=sweeptype
local sweepoverflow=false
+ local checkdisc=getprev(head)
local keepdisc=not sweepnode
local lookaheaddisc=nil
local backtrackdisc=nil
@@ -28122,7 +28123,7 @@ local function chaindisk(head,start,dataset,sequence,rlmode,skiphash,ck)
local current=prev
local i=f
local t=sweeptype=="pre" or sweeptype=="replace"
- if not current and t and current==checkdisk then
+ if not current and t and current==checkdisc then
current=getprev(sweepnode)
end
while current and i>1 do
@@ -28150,7 +28151,7 @@ local function chaindisk(head,start,dataset,sequence,rlmode,skiphash,ck)
end
end
current=getprev(current)
- if t and current==checkdisk then
+ if t and current==checkdisc then
current=getprev(sweepnode)
end
end
@@ -28335,6 +28336,9 @@ local function handle_contextchain(head,start,dataset,sequence,contexts,rlmode,s
local l=ck[5]
local current=start
local last=start
+ if s==1 then
+ goto next
+ end
if l>f then
local discfound
local n=f+1
@@ -28400,6 +28404,9 @@ local function handle_contextchain(head,start,dataset,sequence,contexts,rlmode,s
break
end
end
+ if n<=l then
+ notmatchpre[last]=true
+ end
else
notmatchpre[last]=true
end