Skip to content

Commit 1a67988

Browse files
committedMar 14, 2014
atlas: don't crash the coverage layer is removed (refs #9779)
1 parent 3224a2f commit 1a67988

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed
 

‎src/core/composer/qgsatlascomposition.cpp

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,13 @@ void QgsAtlasComposition::setCoverageLayer( QgsVectorLayer* layer )
6565
QgsExpression::setSpecialColumn( "$numfeatures", QVariant(( int )mFeatureIds.size() ) );
6666

6767
// Grab the first feature so that user can use it to test the style in rules.
68-
QgsFeature fet;
69-
layer->getFeatures().nextFeature( fet );
70-
QgsExpression::setSpecialColumn( "$atlasfeatureid", fet.id() );
71-
QgsExpression::setSpecialColumn( "$atlasgeometry", QVariant::fromValue( *fet.geometry() ) );
68+
if( layer )
69+
{
70+
QgsFeature fet;
71+
layer->getFeatures().nextFeature( fet );
72+
QgsExpression::setSpecialColumn( "$atlasfeatureid", fet.id() );
73+
QgsExpression::setSpecialColumn( "$atlasgeometry", QVariant::fromValue( *fet.geometry() ) );
74+
}
7275

7376
emit coverageLayerChanged( layer );
7477
}
@@ -663,6 +666,9 @@ void QgsAtlasComposition::setFilenamePattern( const QString& pattern )
663666

664667
void QgsAtlasComposition::updateFilenameExpression()
665668
{
669+
if ( !mCoverageLayer )
670+
return;
671+
666672
const QgsFields& fields = mCoverageLayer->pendingFields();
667673

668674
if ( !mSingleFile && mFilenamePattern.size() > 0 )

0 commit comments

Comments
 (0)
Please sign in to comment.