Minor
diff --git a/Lib/fontTools/ttLib/tables/otBase.py b/Lib/fontTools/ttLib/tables/otBase.py
index 0e1e1f7..2b405f0 100644
--- a/Lib/fontTools/ttLib/tables/otBase.py
+++ b/Lib/fontTools/ttLib/tables/otBase.py
@@ -31,12 +31,12 @@
def decompile(self, data, font):
import otTables
- cachingStats = None
+ cachingStats = None if True else {}
reader = OTTableReader(data, self.tableTag, cachingStats=cachingStats)
tableClass = getattr(otTables, self.tableTag)
self.table = tableClass()
self.table.decompile(reader, font)
- if 0:
+ if cachingStats:
stats = [(v, k) for k, v in cachingStats.items()]
stats.sort()
stats.reverse()
diff --git a/Lib/fontTools/ttLib/tables/otConverters.py b/Lib/fontTools/ttLib/tables/otConverters.py
index 544a7ee..edf2999 100644
--- a/Lib/fontTools/ttLib/tables/otConverters.py
+++ b/Lib/fontTools/ttLib/tables/otConverters.py
@@ -173,7 +173,6 @@
subReader = reader.getSubReader(offset, persistent=lazy)
table = self.tableClass()
if lazy:
- # Lazy decompile
table.reader = subReader
table.font = font
table.compileStatus = 1
@@ -207,17 +206,20 @@
tableClass = lookupTypes[lookupType]
return ExtSubTable(self.name, self.repeat, self.repeatOffset, tableClass)
- def read(self, reader, font, tableStack):
+ def read(self, reader, font, tableStack, lazy=True):
offset = reader.readULong()
if offset == 0:
return None
subReader = reader.getSubReader(offset)
table = self.tableClass()
- table.reader = subReader
- table.font = font
- table.compileStatus = 1
- table.tableStack = TableStack(tableStack)
- table.start = table.reader.offset
+ table.start = subReader.offset
+ if lazy:
+ table.reader = subReader
+ table.font = font
+ table.compileStatus = 1
+ table.tableStack = TableStack(tableStack)
+ else:
+ table.decompile(subReader, font, tableStack)
return table
def write(self, writer, font, tableStack, value, repeatIndex=None):