소스 검색

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.
Marta Marczykowska-Górecka 5 년 전
부모
커밋
d2ad60edd2
1개의 변경된 파일10개의 추가작업 그리고 2개의 파일을 삭제
  1. 10 2
      qubesmanager/qube_manager.py

+ 10 - 2
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)