From c0e61b729a23f7d8a8d4bc9891fb2bddffccaa5a Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Thu, 16 Dec 2021 10:31:56 -0700 Subject: [PATCH] [merge] Move cmap computation closer to glyph-order computation --- Lib/fontTools/merge/__init__.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Lib/fontTools/merge/__init__.py b/Lib/fontTools/merge/__init__.py index 37348c824..4737969f0 100644 --- a/Lib/fontTools/merge/__init__.py +++ b/Lib/fontTools/merge/__init__.py @@ -69,6 +69,8 @@ class Merger(object): fonts = [ttLib.TTFont(fontfile) for fontfile in fontfiles] glyphOrders = [font.getGlyphOrder() for font in fonts] megaGlyphOrder = computeMegaGlyphOrder(self, glyphOrders) + self.duplicateGlyphsPerFont = [{} for _ in fonts] + computeMegaCmap(self, [font['cmap'] for font in fonts]) # Take first input file sfntVersion sfntVersion = fonts[0].sfntVersion @@ -97,9 +99,6 @@ class Merger(object): self._preMerge(font) self.fonts = fonts - self.duplicateGlyphsPerFont = [{} for _ in fonts] - - computeMegaCmap(self, [font['cmap'] for font in fonts]) allTags = reduce(set.union, (list(font.keys()) for font in fonts), set()) allTags.remove('GlyphOrder')