From 7129501e0d7747d6396c06ef728416059a0bdbb1 Mon Sep 17 00:00:00 2001 From: Martin Hosken Date: Wed, 18 Sep 2019 09:22:55 +0700 Subject: [PATCH] py3 fixup Silf corner case where script is actually used --- Lib/fontTools/ttLib/tables/S__i_l_f.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Lib/fontTools/ttLib/tables/S__i_l_f.py b/Lib/fontTools/ttLib/tables/S__i_l_f.py index b10692b0e..fbacd4e70 100644 --- a/Lib/fontTools/ttLib/tables/S__i_l_f.py +++ b/Lib/fontTools/ttLib/tables/S__i_l_f.py @@ -400,7 +400,7 @@ class Silf(object): data = data[self.numCritFeatures * 2 + 1:] (numScriptTag,) = struct.unpack_from('B', data) if numScriptTag: - self.scriptTags = [struct.unpack("4s", data[x:x+4])[0] for x in range(1, 1 + 4 * numScriptTag, 4)] + self.scriptTags = [struct.unpack("4s", data[x:x+4])[0].decode("ascii") for x in range(1, 1 + 4 * numScriptTag, 4)] data = data[1 + 4 * numScriptTag:] (self.lbGID,) = struct.unpack('>H', data[:2]) if self.numPasses: @@ -446,8 +446,8 @@ class Silf(object): data += struct.pack((">%dH" % self.numCritFeaturs), *self.critFeatures) data += struct.pack("BB", 0, len(self.scriptTags)) if len(self.scriptTags): - tdata = [struct.pack("4s", x) for x in self.scriptTags] - data += "".join(tdata) + tdata = [struct.pack("4s", x.encode("ascii")) for x in self.scriptTags] + data += b"".join(tdata) data += struct.pack(">H", self.lbGID) self.passOffset = len(data)