Skip to content

Commit 446db28

Browse files
committedMay 11, 2017
Optimise QgsVectorLayerExporter::exportLayer when exporting only selected features
1 parent 75a5d5d commit 446db28

File tree

1 file changed

+2
-5
lines changed

1 file changed

+2
-5
lines changed
 

‎src/core/qgsvectorlayerexporter.cpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -326,11 +326,11 @@ QgsVectorLayerExporter::exportLayer( QgsVectorLayer *layer,
326326
QgsFeatureRequest req;
327327
if ( wkbType == QgsWkbTypes::NoGeometry )
328328
req.setFlags( QgsFeatureRequest::NoGeometry );
329+
if ( onlySelected )
330+
req.setFilterFids( layer->selectedFeatureIds() );
329331

330332
QgsFeatureIterator fit = layer->getFeatures( req );
331333

332-
const QgsFeatureIds &ids = layer->selectedFeatureIds();
333-
334334
// Create our transform
335335
if ( destCRS.isValid() )
336336
ct = QgsCoordinateTransform( layer->crs(), destCRS );
@@ -375,9 +375,6 @@ QgsVectorLayerExporter::exportLayer( QgsVectorLayer *layer,
375375
break;
376376
}
377377

378-
if ( onlySelected && !ids.contains( fet.id() ) )
379-
continue;
380-
381378
if ( shallTransform )
382379
{
383380
try

0 commit comments

Comments
 (0)
Please sign in to comment.