[varLib] Fix building variation of PairPosFormat2

I broke this with a738464f775c190bf70e26d0a32ff2344ec43201
Ouch!
This commit is contained in:
Behdad Esfahbod 2017-02-05 18:48:15 -08:00
parent e45297bf4b
commit b5c34ceb15

View File

@ -278,35 +278,38 @@ def merge(merger, self, lst):
merger.valueFormat1 = self.ValueFormat1
merger.valueFormat2 = self.ValueFormat2
if self.Format == 2:
if self.Format == 1:
# Merge everything else; makes sure Format is the same.
merger.mergeObjects(self, lst,
exclude=('Coverage',
'PairSet', 'PairSetCount'))
empty = ot.PairSet()
empty.PairValueRecord = []
empty.PairValueCount = 0
# Align them
glyphs, padded = _merge_GlyphOrders(merger.font,
[v.Coverage.glyphs for v in lst],
[v.PairSet for v in lst],
default=empty)
self.Coverage.glyphs = glyphs
self.PairSet = [ot.PairSet() for g in glyphs]
self.PairSetCount = len(self.PairSet)
for glyph, ps in zip(glyphs, self.PairSet):
ps._firstGlyph = glyph
merger.mergeLists(self.PairSet, padded)
elif self.Format == 2:
# Everything must match; we don't support smart merge yet.
merger.mergeObjects(self, lst)
del merger.valueFormat1, merger.valueFormat2
return
assert self.Format == 1
# Merge everything else; makes sure Format is the same.
merger.mergeObjects(self, lst,
exclude=('Coverage',
'PairSet', 'PairSetCount'))
empty = ot.PairSet()
empty.PairValueRecord = []
empty.PairValueCount = 0
# Align them
glyphs, padded = _merge_GlyphOrders(merger.font,
[v.Coverage.glyphs for v in lst],
[v.PairSet for v in lst],
default=empty)
self.Coverage.glyphs = glyphs
self.PairSet = [ot.PairSet() for g in glyphs]
self.PairSetCount = len(self.PairSet)
for glyph, ps in zip(glyphs, self.PairSet):
ps._firstGlyph = glyph
merger.mergeLists(self.PairSet, padded)
else:
assert 0
del merger.valueFormat1, merger.valueFormat2