diff --git a/python/plugins/db_manager/table_viewer.py b/python/plugins/db_manager/table_viewer.py index 2af9704ca05a..9ab9e35c17d3 100644 --- a/python/plugins/db_manager/table_viewer.py +++ b/python/plugins/db_manager/table_viewer.py @@ -67,7 +67,12 @@ def setDirty(self, val=True): def _clear(self): if self.item is not None: - self.disconnect(self.item, SIGNAL('aboutToChange'), self.setDirty) + try: + self.disconnect(self.item, SIGNAL('aboutToChange'), self.setDirty) + except: + # do not raise any error if self.item was deleted + pass + self.item = None self.dirty = False @@ -83,11 +88,13 @@ def _loadTableData(self, table): self.setModel( table.tableDataModel(self) ) except DbError, e: - QApplication.restoreOverrideCursor() DlgDbError.showError(e, self) + return else: self.update() + + finally: QApplication.restoreOverrideCursor()