From cee1f5615909485dbf6dda532c58f484e92c43ab Mon Sep 17 00:00:00 2001 From: Nyall Dawson Date: Wed, 20 Sep 2017 08:28:27 +1000 Subject: [PATCH] Fix crash when trying to delete invalid curve from compound curves --- src/core/geometry/qgscompoundcurve.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/core/geometry/qgscompoundcurve.cpp b/src/core/geometry/qgscompoundcurve.cpp index b1a189ab840..c51c3bc9d18 100644 --- a/src/core/geometry/qgscompoundcurve.cpp +++ b/src/core/geometry/qgscompoundcurve.cpp @@ -417,13 +417,12 @@ void QgsCompoundCurve::addCurve( QgsCurve *c ) void QgsCompoundCurve::removeCurve( int i ) { - if ( mCurves.size() - 1 < i ) + if ( i < 0 || i >= mCurves.size() ) { return; } - delete ( mCurves.at( i ) ); - mCurves.removeAt( i ); + delete mCurves.takeAt( i ); clearCache(); }