From d2ad60edd2a7d8115ebb3681d42de430ae962692 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marta=20Marczykowska-G=C3=B3recka?= Date: Wed, 3 Apr 2019 20:39:40 +0200 Subject: [PATCH] Fix error on reverting Qube Manager to an older version In rare case (when the Qube Manager was reverted to an older version that does not have a column on which it was last sorted) downgrading Qube Manager could result in a crash on start. --- qubesmanager/qube_manager.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/qubesmanager/qube_manager.py b/qubesmanager/qube_manager.py index 83720ab..9b9dbf8 100644 --- a/qubesmanager/qube_manager.py +++ b/qubesmanager/qube_manager.py @@ -608,8 +608,16 @@ class VmManagerWindow(ui_qubemanager.Ui_VmManagerWindow, QtGui.QMainWindow): self.sort_order = QtCore.Qt.SortOrder( self.manager_settings.value("view/sort_order", defaultValue=self.sort_order)) - self.table.sortItems(self.columns_indices[self.sort_by_column], - self.sort_order) + + try: + self.table.sortItems(self.columns_indices[self.sort_by_column], + self.sort_order) + except KeyError: + # the manager was sorted on a column that does not exist in the + # current version; possible only with downgrades + self.table.sortItems(self.columns_indices["Name"], + self.sort_order) + if not self.manager_settings.value("view/menubar_visible", defaultValue=True): self.action_menubar.setChecked(False)