File tree Expand file tree Collapse file tree 1 file changed +13
-13
lines changed
Expand file tree Collapse file tree 1 file changed +13
-13
lines changed Original file line number Diff line number Diff line change @@ -5624,23 +5624,23 @@ void QgisApp::editPaste( QgsMapLayer *destinationLayer )
56245624 if ( featureIt->geometry () )
56255625 {
56265626 // convert geometry to match destination layer
5627- QgsGeometry* newGeometry = featureIt->geometry ()->convertToType ( pasteVectorLayer->geometryType (), QGis::isMultiType ( pasteVectorLayer->wkbType () ) );
5628- if ( newGeometry )
5627+ QGis::GeometryType destType = pasteVectorLayer->geometryType ();
5628+ bool destIsMulti = QGis::isMultiType ( pasteVectorLayer->wkbType () );
5629+ if ( destType != QGis::UnknownGeometry )
56295630 {
5630- // avoid intersection if enabled in digitize settings
5631+ QgsGeometry* newGeometry = featureIt->geometry ()->convertToType ( destType, destIsMulti );
5632+ if ( !newGeometry )
5633+ {
5634+ featureIt = features.erase ( featureIt );
5635+ continue ;
5636+ }
56315637 featureIt->setGeometry ( newGeometry );
5632- featureIt->geometry ()->avoidIntersections ();
5633- ++featureIt;
5634- }
5635- else
5636- {
5637- featureIt = features.erase ( featureIt );
56385638 }
5639+ // avoid intersection if enabled in digitize settings
5640+ featureIt->geometry ()->avoidIntersections ();
56395641 }
5640- else
5641- {
5642- ++featureIt;
5643- }
5642+
5643+ ++featureIt;
56445644 }
56455645
56465646 pasteVectorLayer->addFeatures ( features );
You can’t perform that action at this time.
0 commit comments