Opened 15 years ago
Closed 15 years ago
Last modified 14 years ago
#811 closed defect (fixed)
selectionChanged() SIGNAL getting connected and disconnected on raster layers in qgsmapcanvas.cpp
|Reported by:||aaronr||Owned by:||aaronr|
|Must Fix for Release:||No||Platform:||All|
|Platform Version:||Awaiting user input:||no|
In qgsmapcanvas.cpp in QgsMapCanvas::setLayerSet a disconnect and connect call to selectionChanged signal are being made on the map layer set, but some of those layers can be raster layers. selectionChanged() is a signal that only vector layers can emit.
This bug causes warning messages to appear when calling setLayerSet via the python bindings with a layer set that contains rasters.
The solution is to wrap the disconnect and connect calls with logic to test if the layer is a vector layer.
Change History (4)
by , 15 years ago
comment:1 by , 15 years ago
|Status:||new → assigned|
Turns out src/app/legend/qgslegendlayerfile.cpp also contains the issue... not only for selectionChanged() but for wasModified(bool) as well. Both of these need to be connected only to vector layers. Attached is a patch to wrap all of these cases to check for vector layer.
comment:2 by , 15 years ago
|Status:||assigned → closed|
Applied in r7416. Many thanks for the input!
comment:3 by , 14 years ago
Milestone Version 0.9.1 deleted
Bug fix for Ticket #811