From 659299a3182fb7cc6b3f116d552ffaca48756b4d Mon Sep 17 00:00:00 2001 From: Chris Simpkins Date: Thu, 27 Jul 2017 22:18:42 -0400 Subject: [PATCH] detect incorrect metainfo.plist formatVersion type before version testing (#83) --- Lib/ufoLib/__init__.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Lib/ufoLib/__init__.py b/Lib/ufoLib/__init__.py index 02e2b6ccd..c6eb7b2d7 100755 --- a/Lib/ufoLib/__init__.py +++ b/Lib/ufoLib/__init__.py @@ -250,6 +250,9 @@ class UFOReader(object): if not isinstance(data, dict): raise UFOLibError("metainfo.plist is not properly formatted.") formatVersion = data["formatVersion"] + if isinstance(formatVersion, int) is False: + metaplist_path = os.path.join(self._path, METAINFO_FILENAME) + raise UFOLibError("formatVersion must be specified as an integer in " + metaplist_path) if formatVersion not in supportedUFOFormatVersions: raise UFOLibError("Unsupported UFO format (%d) in %s." % (formatVersion, self._path)) self._formatVersion = formatVersion