From 17567ee5aadbdbb70771030df987f46fdee86d4e Mon Sep 17 00:00:00 2001 From: Nyall Dawson Date: Mon, 24 Sep 2018 19:45:12 +1000 Subject: [PATCH] [processing] Never run feature validity check for point layers Saves a few cycles. The feature validity checks have no meaning for point layers. Refs #19919 --- src/core/processing/qgsprocessingutils.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/core/processing/qgsprocessingutils.cpp b/src/core/processing/qgsprocessingutils.cpp index 377e0a027924..d64960da28ff 100644 --- a/src/core/processing/qgsprocessingutils.cpp +++ b/src/core/processing/qgsprocessingutils.cpp @@ -727,7 +727,9 @@ QgsFields QgsProcessingUtils::indicesToFields( const QList &indices, const QgsProcessingFeatureSource::QgsProcessingFeatureSource( QgsFeatureSource *originalSource, const QgsProcessingContext &context, bool ownsOriginalSource ) : mSource( originalSource ) , mOwnsSource( ownsOriginalSource ) - , mInvalidGeometryCheck( context.invalidGeometryCheck() ) + , mInvalidGeometryCheck( QgsWkbTypes::geometryType( mSource->wkbType() ) == QgsWkbTypes::PointGeometry + ? QgsFeatureRequest::GeometryNoCheck // never run geometry validity checks for point layers! + : context.invalidGeometryCheck() ) , mInvalidGeometryCallback( context.invalidGeometryCallback() ) , mTransformErrorCallback( context.transformErrorCallback() ) {}