diff --git a/Lib/fontTools/varLib/merger.py b/Lib/fontTools/varLib/merger.py index aaf2a5130..ef9860999 100644 --- a/Lib/fontTools/varLib/merger.py +++ b/Lib/fontTools/varLib/merger.py @@ -264,7 +264,8 @@ def merge(merger, self, lst): coverageGlyphs = self.Coverage.glyphs if all(v.Format == 1 for v in lst) and all(coverageGlyphs == v.Coverage.glyphs for v in lst): self.Value = otBase.ValueRecord(valueFormat) - merger.mergeThings(self.Value, [v.Value for v in lst]) + if valueFormat != 0: + merger.mergeThings(self.Value, [v.Value for v in lst]) self.ValueFormat = self.Value.getFormat() return @@ -297,7 +298,7 @@ def merge(merger, self, lst): # Merge everything else; though, there shouldn't be anything else. :) merger.mergeObjects(self, lst, - exclude=('Format', 'Coverage', 'Value', 'ValueCount')) + exclude=('Format', 'Coverage', 'Value', 'ValueCount', 'ValueFormat')) self.ValueFormat = reduce(int.__or__, [v.getEffectiveFormat() for v in self.Value], 0) @AligningMerger.merger(ot.PairSet)