From 69af8a9b65f99d8c18084b7326248751c172f184 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 22 Apr 2014 16:04:33 +0530 Subject: [PATCH] More robust fix for handling of .py config files with pickled QByteArray instances --- src/calibre/utils/config_base.py | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/calibre/utils/config_base.py b/src/calibre/utils/config_base.py index bbf6d1201e..5fd7bee68a 100644 --- a/src/calibre/utils/config_base.py +++ b/src/calibre/utils/config_base.py @@ -193,16 +193,12 @@ class OptionSet(object): try: if not isinstance(src, unicode): src = src.decode('utf-8') - src = src.replace(u'PyQt5.QtCore', u'PyQt4.QtCore') + src = src.replace(u'PyQt4.QtCore', u'PyQt5.QtCore') exec src in options - except (SystemError, RuntimeError): - try: - src = src.replace('PyQt' + '4', 'PyQt5') - exec src in options - except: - print 'Failed to parse options string:' - print repr(src) - traceback.print_exc() + except: + print 'Failed to parse options string:' + print repr(src) + traceback.print_exc() opts = OptionValues() for pref in self.preferences: val = options.get(pref.name, pref.default)