Bug report #12245

iface.mapCanvas().refreshMap() segfaults QGIS

Added by Richard Duivenvoorde almost 5 years ago. Updated almost 5 years ago.

Status:Closed
Priority:High
Assignee:-
Category:Python plugins
Affected QGIS version:master Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:invalid
Crashes QGIS or corrupts data:Yes Copied to github as #:20430

Description

Needed to refresh my mapcanvas for a plugin, and refresh() did not do the job, so I found refreshMap()...

That just crashes QGIS here, running master on Debian.
I see it is a private slot, and tried other slots.

Not sure if this can be handled more gently, or it is just a fact of life: you should not call private slots in pyqgis....

History

#1 Updated by Giovanni Manghi almost 5 years ago

  • Crashes QGIS or corrupts data changed from No to Yes
  • Priority changed from Normal to High
  • Category set to Python plugins

#2 Updated by Martin Dobias almost 5 years ago

  • Resolution set to invalid
  • Status changed from Open to Closed

refreshMap() is private because it is not meant to be used from outside... It deliberately crashes on an assertion condition. It is not a part of API, the fact you can call it is just something resulting from PyQt's new signals/slots mechanism.

Also available in: Atom PDF