From 7a4ef0d396d9d460b9189054eaddb428462cc5eb Mon Sep 17 00:00:00 2001 From: Nyall Dawson Date: Mon, 16 May 2016 15:57:57 +1000 Subject: [PATCH] Fix memory leak in OGR provider when feature has no geometry and FilterRect is used (cherry-picked from 6b80518a5b55ab30fb19493266d5626d0f89d26b) --- src/providers/ogr/qgsogrfeatureiterator.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/providers/ogr/qgsogrfeatureiterator.cpp b/src/providers/ogr/qgsogrfeatureiterator.cpp index 77dcac8eeff3..6516d1e1f4f0 100644 --- a/src/providers/ogr/qgsogrfeatureiterator.cpp +++ b/src/providers/ogr/qgsogrfeatureiterator.cpp @@ -226,13 +226,14 @@ bool QgsOgrFeatureIterator::fetchFeature( QgsFeature& feature ) { if ( !readFeature( fet, feature ) ) continue; + else + OGR_F_Destroy( fet ); if ( !mRequest.filterRect().isNull() && !feature.constGeometry() ) continue; // we have a feature, end this cycle feature.setValid( true ); - OGR_F_Destroy( fet ); return true; } // while