diff --git a/src/core/qgsvectorlayereditutils.cpp b/src/core/qgsvectorlayereditutils.cpp index dd889a734454..3a44ef61e92d 100644 --- a/src/core/qgsvectorlayereditutils.cpp +++ b/src/core/qgsvectorlayereditutils.cpp @@ -163,6 +163,8 @@ int QgsVectorLayerEditUtils::addPart( const QList &points, QgsFeatureI geometry = *f.geometry(); } + geometry.convertToMultiType(); + int errorCode = geometry.addPart( points, L->geometryType() ); if ( errorCode == 0 ) { @@ -187,6 +189,8 @@ int QgsVectorLayerEditUtils::addPart( QgsCurveV2* ring, QgsFeatureId featureId ) geometry = *f.geometry(); } + geometry.convertToMultiType(); + int errorCode = geometry.addPart( ring ); if ( errorCode == 0 ) {