From 4634fb3dabbcc777742e32bac9a05553358f8595 Mon Sep 17 00:00:00 2001 From: Charles Haley Date: Thu, 1 Jun 2017 08:18:39 +0200 Subject: [PATCH] Fix #1694757: calibre fails to start if the tweak tag_browser_category_order is malformed. --- src/calibre/gui2/tag_browser/model.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/calibre/gui2/tag_browser/model.py b/src/calibre/gui2/tag_browser/model.py index 1295aa5dea..64c830b7d0 100644 --- a/src/calibre/gui2/tag_browser/model.py +++ b/src/calibre/gui2/tag_browser/model.py @@ -994,7 +994,13 @@ class TagsModel(QAbstractItemModel): # {{{ self.categories[category] = tb_categories[category]['name'] # Now build the list of fields in display order - order = tweaks['tag_browser_category_order'] + try: + order = tweaks['tag_browser_category_order'] + if not isinstance(order, dict): + raise TypeError() + except: + print ('Tweak tag_browser_category_order is not valid. Ignored') + order = {'*': 100} defvalue = order.get('*', 100) self.row_map = sorted(self.categories, key=lambda x: order.get(x, defvalue)) return data