summaryrefslogtreecommitdiff
path: root/tex/generic
diff options
context:
space:
mode:
Diffstat (limited to 'tex/generic')
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua93
1 files changed, 54 insertions, 39 deletions
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index d37e64216..4776e2cb0 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 : 08/16/18 10:17:32
+-- merge date : 08/19/18 12:52:28
do -- begin closure to overcome local limits and interference
@@ -20900,9 +20900,9 @@ function readers.getcomponents(fontdata)
end
end
for i=1,#steps do
- local coverage=steps[i].coverage
- if coverage then
- for k,v in next,coverage do
+ local c=steps[i].coverage
+ if c then
+ for k,v in next,c do
traverse(k,k,v)
end
end
@@ -21969,9 +21969,12 @@ local function mergesteps_1(lookup,strict)
report("merging %a steps of %a lookup %a",nofsteps,lookup.type,lookup.name)
local target=first.coverage
for i=2,nofsteps do
- for k,v in next,steps[i].coverage do
- if not target[k] then
- target[k]=v
+ local c=steps[i].coverage
+ if c then
+ for k,v in next,c do
+ if not target[k] then
+ target[k]=v
+ end
end
end
end
@@ -21996,16 +21999,19 @@ local function mergesteps_2(lookup)
report("merging %a steps of %a lookup %a",nofsteps,lookup.type,lookup.name)
local target=first.coverage
for i=2,nofsteps do
- for k,v in next,steps[i].coverage do
- local tk=target[k]
- if tk then
- for kk,vv in next,v do
- if tk[kk]==nil then
- tk[kk]=vv
+ local c=steps[i].coverage
+ if c then
+ for k,v in next,c do
+ local tk=target[k]
+ if tk then
+ for kk,vv in next,v do
+ if tk[kk]==nil then
+ tk[kk]=vv
+ end
end
+ else
+ target[k]=v
end
- else
- target[k]=v
end
end
end
@@ -22020,13 +22026,16 @@ local function mergesteps_3(lookup,strict)
report("merging %a steps of %a lookup %a",nofsteps,lookup.type,lookup.name)
local coverage={}
for i=1,nofsteps do
- for k,v in next,steps[i].coverage do
- local tk=coverage[k]
- if tk then
- report("quitting merge due to multiple checks")
- return nofsteps
- else
- coverage[k]=v
+ local c=steps[i].coverage
+ if c then
+ for k,v in next,c do
+ local tk=coverage[k]
+ if tk then
+ report("quitting merge due to multiple checks")
+ return nofsteps
+ else
+ coverage[k]=v
+ end
end
end
end
@@ -22072,12 +22081,15 @@ local function mergesteps_4(lookup)
report("merging %a steps of %a lookup %a",nofsteps,lookup.type,lookup.name)
local target=first.coverage
for i=2,nofsteps do
- for k,v in next,steps[i].coverage do
- local tk=target[k]
- if tk then
- nested(v,tk)
- else
- target[k]=v
+ local c=steps[i].coverage
+ if c then
+ for k,v in next,c do
+ local tk=target[k]
+ if tk then
+ nested(v,tk)
+ else
+ target[k]=v
+ end
end
end
end
@@ -22097,18 +22109,21 @@ local function mergesteps_5(lookup)
break
end
for i=2,nofsteps do
- for k,v in next,steps[i].coverage do
- local tk=target[k]
- if tk then
- if not tk[2] then
- tk[2]=v[2]
- end
- if not tk[3] then
- tk[3]=v[3]
+ local c=steps[i].coverage
+ if c then
+ for k,v in next,c do
+ local tk=target[k]
+ if tk then
+ if not tk[2] then
+ tk[2]=v[2]
+ end
+ if not tk[3] then
+ tk[3]=v[3]
+ end
+ else
+ target[k]=v
+ v[1]=hash
end
- else
- target[k]=v
- v[1]=hash
end
end
end