Bug report #6892

setDirty error when displaying DB Manager previews

Added by Paolo Cavallini over 11 years ago. Updated over 10 years ago.

Status:Closed
Priority:Normal
Assignee:-
Category:DB Manager
Affected QGIS version:master Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:
Crashes QGIS or corrupts data:No Copied to github as #:16017

Description

If I:

- import a layer
- click on the Preview tab
- right-click on the tale name > Drop
click on another preview

I get forever:

Traceback (most recent call last):
File "/usr/share/qgis/python/plugins/db_manager/db_manager.py", line 83,
in itemChanged
self.refreshTabs()
File "/usr/share/qgis/python/plugins/db_manager/db_manager.py", line 138,
in refreshTabs
self.preview.loadPreview( item )
File "/usr/share/qgis/python/plugins/db_manager/layer_preview.py", line
57, in loadPreview
self._clear()
File "/usr/share/qgis/python/plugins/db_manager/layer_preview.py", line
77, in _clear
self.disconnect(self.item, SIGNAL, self.setDirty)
RuntimeError: wrapped C/C++ object of %S has been deleted

Associated revisions

Revision fc2a4a14
Added by Salvatore Larosa over 10 years ago

[dbmanager] skip RuntimeError: fixes #6892

Revision d100628d
Added by Giuseppe Sucameli over 10 years ago

Merge pull request #827 from slarosa/fix_6892

[dbmanager] skip RuntimeError: fixes #6892

History

#1 Updated by Pedro Venâncio over 10 years ago

Hi,

I got a similar error:

An error has occured while executing Python code:

Traceback (most recent call last):
  File "/usr/share/qgis/python/plugins/db_manager/db_manager.py", line 112, in tabChanged
    self.refreshTabs()
  File "/usr/share/qgis/python/plugins/db_manager/db_manager.py", line 138, in refreshTabs
    self.preview.loadPreview( item )
  File "/usr/share/qgis/python/plugins/db_manager/layer_preview.py", line 57, in loadPreview
    self._clear()
  File "/usr/share/qgis/python/plugins/db_manager/layer_preview.py", line 77, in _clear
    self.disconnect(self.item, SIGNAL('aboutToChange'), self.setDirty)
RuntimeError: underlying C/C++ object has been deleted

Python version:
2.7.3 (default, Apr 10 2013, 06:03:17) 
[GCC 4.6.3]

QGIS version:
1.9.0-Master Master, exported

To reproduce:
1) Start DB Manager
2) Select a table/layer and make "Preview"
3) Import a new table/layer
4) Do "Preview" again, on any table

In the "Preview" window always appears the last layer that was selected in 2), before making an "Import".

#2 Updated by Giuseppe Sucameli over 10 years ago

  • Status changed from Open to Closed

Also available in: Atom PDF