Because plistlib doesn't catch all possible errors that can
happen while parsing a plistfile feeding an ill-formatted file to
pimp may cause an exception. As a stopgap we use an unqualified except
and print an error message "Unspecified error, probably ill-formatted
database". Fixes #765621.
diff --git a/Mac/Tools/IDE/PackageManager.py b/Mac/Tools/IDE/PackageManager.py
index eee5b0a..27cd239 100755
--- a/Mac/Tools/IDE/PackageManager.py
+++ b/Mac/Tools/IDE/PackageManager.py
@@ -253,6 +253,11 @@
rv = "Cannot open %s: %s\n" % (url, arg)
rv += "\nSee MacPython Package Manager help page."
return rv
+ except:
+ rv = "Unspecified error while parsing database: %s\n" % url
+ rv += "Usually, this means the database is not correctly formatted.\n"
+ rv += "\nSee MacPython Package Manager help page."
+ return rv
# Check whether we can write the installation directory.
# If not, set to the per-user directory, possibly
# creating it, if needed.