File tree Expand file tree Collapse file tree 1 file changed +11
-6
lines changed Expand file tree Collapse file tree 1 file changed +11
-6
lines changed Original file line number Diff line number Diff line change @@ -222,20 +222,25 @@ const QgsMapToPixel * QgsMapCanvas::getCoordinateTransform()
222
222
return mMapRenderer ->coordinateTransform ();
223
223
}
224
224
225
- void QgsMapCanvas::setLayerSet ( QList<QgsMapCanvasLayer>& layers )
225
+ void QgsMapCanvas::setLayerSet ( QList<QgsMapCanvasLayer> & layers )
226
226
{
227
227
if ( mDrawing )
228
228
{
229
229
return ;
230
230
}
231
- int i;
232
231
233
232
// create layer set
234
233
QStringList layerSet, layerSetOverview;
235
234
235
+ int i;
236
236
for ( i = 0 ; i < layers.size (); i++ )
237
237
{
238
- QgsMapCanvasLayer& lyr = layers[i];
238
+ QgsMapCanvasLayer &lyr = layers[i];
239
+ if ( !lyr.layer () )
240
+ {
241
+ continue ;
242
+ }
243
+
239
244
if ( lyr.isVisible () )
240
245
{
241
246
layerSet.push_back ( lyr.layer ()->getLayerID () );
@@ -248,7 +253,7 @@ void QgsMapCanvas::setLayerSet( QList<QgsMapCanvasLayer>& layers )
248
253
249
254
QStringList& layerSetOld = mMapRenderer ->layerSet ();
250
255
251
- bool layerSetChanged = ( layerSetOld != layerSet ) ;
256
+ bool layerSetChanged = layerSetOld != layerSet;
252
257
253
258
// update only if needed
254
259
if ( layerSetChanged )
@@ -1170,11 +1175,11 @@ int QgsMapCanvas::layerCount() const
1170
1175
QList<QgsMapLayer*> QgsMapCanvas::layers () const
1171
1176
{
1172
1177
QList<QgsMapLayer*> lst;
1173
- foreach ( QString layerID, mMapRenderer ->layerSet () )
1178
+ foreach ( QString layerID, mMapRenderer ->layerSet () )
1174
1179
{
1175
1180
QgsMapLayer* layer = QgsMapLayerRegistry::instance ()->mapLayer ( layerID );
1176
1181
if ( layer )
1177
- lst.append (layer);
1182
+ lst.append ( layer );
1178
1183
}
1179
1184
return lst;
1180
1185
}
You can’t perform that action at this time.
0 commit comments