Skip to content

Commit a0b9877

Browse files
committedMar 24, 2016
[Geometry checker] Fix crash in QgsGeometryAreaCheck::mergeWithNeighbor due to incorrect code ordering
1 parent d3e08da commit a0b9877

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed
 

‎src/plugins/geometry_checker/checks/qgsgeometryareacheck.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -182,14 +182,6 @@ bool QgsGeometryAreaCheck::mergeWithNeighbor( QgsFeature& feature, int partIdx,
182182
return method == MergeIdenticalAttribute ? true : false;
183183
}
184184

185-
186-
// Remove polygon from source geometry
187-
deleteFeatureGeometryPart( feature, partIdx, changes );
188-
if ( mergeFeature.id() == feature.id() && mergePartIdx > partIdx )
189-
{
190-
--mergePartIdx;
191-
}
192-
193185
// Merge geometries
194186
QgsAbstractGeometryV2* mergeGeom = mergeFeature.geometry()->geometry();
195187
QgsGeometryEngine* geomEngine = QgsGeomUtils::createGeomEngine( QgsGeomUtils::getGeomPart( mergeGeom, mergePartIdx ), QgsGeometryCheckPrecision::tolerance() );
@@ -199,6 +191,14 @@ bool QgsGeometryAreaCheck::mergeWithNeighbor( QgsFeature& feature, int partIdx,
199191
{
200192
return false;
201193
}
194+
195+
// Remove polygon from source geometry
196+
deleteFeatureGeometryPart( feature, partIdx, changes );
197+
if ( mergeFeature.id() == feature.id() && mergePartIdx > partIdx )
198+
{
199+
--mergePartIdx;
200+
}
201+
// Replace polygon in merge geometry
202202
replaceFeatureGeometryPart( mergeFeature, mergePartIdx, combinedGeom, changes );
203203

204204
return true;

0 commit comments

Comments
 (0)
Please sign in to comment.