@@ -282,11 +282,12 @@ void QgsLayerStylingWidget::updateCurrentWidgetLayer()
282282{
283283 mBlockAutoApply = true ;
284284
285- QgsMapLayer* layer = mCurrentLayer ;
285+ if ( !mCurrentLayer )
286+ return ;
286287
287- mUndoWidget ->setUndoStack ( layer ->undoStackStyles () );
288+ mUndoWidget ->setUndoStack ( mCurrentLayer ->undoStackStyles () );
288289
289- whileBlocking ( mLayerCombo )->setLayer ( layer );
290+ whileBlocking ( mLayerCombo )->setLayer ( mCurrentLayer );
290291
291292 int row = mOptionsListWidget ->currentIndex ().row ();
292293
@@ -316,7 +317,7 @@ void QgsLayerStylingWidget::updateCurrentWidgetLayer()
316317 // TODO Make all widgets use this method.
317318 if ( mUserPages .contains ( row ) )
318319 {
319- QgsLayerStylingPanel* panel = mUserPages [row]->createPanel ( layer , mMapCanvas , mWidgetStack );
320+ QgsLayerStylingPanel* panel = mUserPages [row]->createPanel ( mCurrentLayer , mMapCanvas , mWidgetStack );
320321 if ( panel )
321322 {
322323 connect ( panel, SIGNAL ( widgetChanged ( QgsPanelWidget* ) ), this , SLOT ( autoApply () ) );
@@ -329,9 +330,9 @@ void QgsLayerStylingWidget::updateCurrentWidgetLayer()
329330 {
330331 mWidgetStack ->addMainPanel ( mUndoWidget );
331332 }
332- else if ( layer ->type () == QgsMapLayer::VectorLayer )
333+ else if ( mCurrentLayer ->type () == QgsMapLayer::VectorLayer )
333334 {
334- QgsVectorLayer *vlayer = qobject_cast<QgsVectorLayer*>( layer );
335+ QgsVectorLayer *vlayer = qobject_cast<QgsVectorLayer*>( mCurrentLayer );
335336
336337 switch ( row )
337338 {
@@ -363,9 +364,9 @@ void QgsLayerStylingWidget::updateCurrentWidgetLayer()
363364 break ;
364365 }
365366 }
366- else if ( layer ->type () == QgsMapLayer::RasterLayer )
367+ else if ( mCurrentLayer ->type () == QgsMapLayer::RasterLayer )
367368 {
368- QgsRasterLayer *rlayer = qobject_cast<QgsRasterLayer*>( layer );
369+ QgsRasterLayer *rlayer = qobject_cast<QgsRasterLayer*>( mCurrentLayer );
369370
370371 switch ( row )
371372 {
0 commit comments