diff options
author | Rod S <rsheeter@google.com> | 2022-03-25 22:07:18 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2022-03-25 22:07:18 +0000 |
commit | 29956f91d34a6e7e114e9e04c4c22296e20b80c8 (patch) | |
tree | 98d81cb66669c50af608fd8a844e22039a00f5ae /Lib/fontTools/varLib/errors.py | |
parent | ec30550b149d3ba5c81fc88f2f90dd171b3f4013 (diff) | |
parent | 3886b0a80e36b841df5bf1b790cfd2bb92764f15 (diff) | |
download | fonttools-c8e612d79d7d9aee2ad9b0f68bb1a84fc796081b.tar.gz |
Update FontTools to 4.31.2 to gain access to iterSubTables. am: 0b59a54a78 am: 3e24ea754b am: 3886b0a80et_frc_odp_330442040t_frc_odp_330442000t_frc_ase_330444010android-13.0.0_r83android-13.0.0_r82android-13.0.0_r81android-13.0.0_r80android-13.0.0_r79android-13.0.0_r78android-13.0.0_r77android-13.0.0_r76android-13.0.0_r75android-13.0.0_r74android-13.0.0_r73android-13.0.0_r72android-13.0.0_r71android-13.0.0_r70android-13.0.0_r69android-13.0.0_r68android-13.0.0_r67android-13.0.0_r66android-13.0.0_r65android-13.0.0_r64android-13.0.0_r63android-13.0.0_r62android-13.0.0_r61android-13.0.0_r60android-13.0.0_r59android-13.0.0_r58android-13.0.0_r57android-13.0.0_r56android-13.0.0_r54android-13.0.0_r53android-13.0.0_r52android-13.0.0_r51android-13.0.0_r50android-13.0.0_r49android-13.0.0_r48android-13.0.0_r47android-13.0.0_r46android-13.0.0_r45android-13.0.0_r44android-13.0.0_r43android-13.0.0_r42android-13.0.0_r41android-13.0.0_r40android-13.0.0_r39android-13.0.0_r38android-13.0.0_r37android-13.0.0_r36android-13.0.0_r35android-13.0.0_r34android-13.0.0_r33android-13.0.0_r32android13-qpr3-s9-releaseandroid13-qpr3-s8-releaseandroid13-qpr3-s7-releaseandroid13-qpr3-s6-releaseandroid13-qpr3-s5-releaseandroid13-qpr3-s4-releaseandroid13-qpr3-s3-releaseandroid13-qpr3-s2-releaseandroid13-qpr3-s14-releaseandroid13-qpr3-s13-releaseandroid13-qpr3-s12-releaseandroid13-qpr3-s11-releaseandroid13-qpr3-s10-releaseandroid13-qpr3-s1-releaseandroid13-qpr3-releaseandroid13-qpr3-c-s8-releaseandroid13-qpr3-c-s7-releaseandroid13-qpr3-c-s6-releaseandroid13-qpr3-c-s5-releaseandroid13-qpr3-c-s4-releaseandroid13-qpr3-c-s3-releaseandroid13-qpr3-c-s2-releaseandroid13-qpr3-c-s12-releaseandroid13-qpr3-c-s11-releaseandroid13-qpr3-c-s10-releaseandroid13-qpr3-c-s1-releaseandroid13-qpr2-s9-releaseandroid13-qpr2-s8-releaseandroid13-qpr2-s7-releaseandroid13-qpr2-s6-releaseandroid13-qpr2-s5-releaseandroid13-qpr2-s3-releaseandroid13-qpr2-s2-releaseandroid13-qpr2-s12-releaseandroid13-qpr2-s11-releaseandroid13-qpr2-s10-releaseandroid13-qpr2-s1-releaseandroid13-qpr2-releaseandroid13-qpr2-b-s1-releaseandroid13-frc-odp-releaseandroid13-devandroid13-d4-s2-releaseandroid13-d4-s1-releaseandroid13-d4-releaseandroid13-d3-s1-release
Original change: https://android-review.googlesource.com/c/platform/external/fonttools/+/2043270
Change-Id: Ie02c14d6e2550eb53669c28030dcf2c938419d6e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Diffstat (limited to 'Lib/fontTools/varLib/errors.py')
-rw-r--r-- | Lib/fontTools/varLib/errors.py | 34 |
1 files changed, 16 insertions, 18 deletions
diff --git a/Lib/fontTools/varLib/errors.py b/Lib/fontTools/varLib/errors.py index 5840070f..c5a149cb 100644 --- a/Lib/fontTools/varLib/errors.py +++ b/Lib/fontTools/varLib/errors.py @@ -12,7 +12,7 @@ class VarLibValidationError(VarLibError): class VarLibMergeError(VarLibError): """Raised when input data cannot be merged into a variable font.""" - def __init__(self, merger, **kwargs): + def __init__(self, merger=None, **kwargs): self.merger = merger if not kwargs: kwargs = {} @@ -28,17 +28,17 @@ class VarLibMergeError(VarLibError): return self.__doc__ def _master_name(self, ix): - ttf = self.merger.ttfs[ix] - if ( - "name" in ttf - and ttf["name"].getDebugName(1) - and ttf["name"].getDebugName(2) - ): - return ttf["name"].getDebugName(1) + " " + ttf["name"].getDebugName(2) - elif hasattr(ttf.reader, "file") and hasattr(ttf.reader.file, "name"): - return ttf.reader.file.name - else: - return "master number %i" % ix + if self.merger is not None: + ttf = self.merger.ttfs[ix] + if ( + "name" in ttf + and ttf["name"].getDebugName(1) + and ttf["name"].getDebugName(2) + ): + return ttf["name"].getDebugName(1) + " " + ttf["name"].getDebugName(2) + elif hasattr(ttf.reader, "file") and hasattr(ttf.reader.file, "name"): + return ttf.reader.file.name + return f"master number {ix}" @property def offender(self): @@ -76,7 +76,7 @@ class ShouldBeConstant(VarLibMergeError): @property def details(self): - if self.stack[0] != ".FeatureCount": + if self.stack[0] != ".FeatureCount" or self.merger is None: return super().details offender_index, offender = self.offender bad_ttf = self.merger.ttfs[offender_index] @@ -102,13 +102,12 @@ class FoundANone(VarLibMergeError): @property def offender(self): - cause = self.argv[0] - index = [x is None for x in cause["got"]].index(True) + index = [x is None for x in self.cause["got"]].index(True) return index, self._master_name(index) @property def details(self): - cause, stack = self.args[0], self.args[1:] + cause, stack = self.cause, self.stack return f"{stack[0]}=={cause['got']}\n" @@ -137,8 +136,7 @@ class UnsupportedFormat(VarLibMergeError): @property def reason(self): - cause, stack = self.args[0], self.args[1:] - return self.__doc__ % cause["subtable"] + return self.__doc__ % self.cause["subtable"] class UnsupportedFormat(UnsupportedFormat): |