Skip to content

Commit e2a735f

Browse files
committed
Simplify QgsMemoryProviderUtils::createMemoryLayer()
1 parent ba2fdf0 commit e2a735f

File tree

1 file changed

+4
-15
lines changed

1 file changed

+4
-15
lines changed

src/core/providers/memory/qgsmemoryproviderutils.cpp

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -56,28 +56,17 @@ QgsVectorLayer *QgsMemoryProviderUtils::createMemoryLayer( const QString &name,
5656
if ( geomType.isNull() )
5757
geomType = QStringLiteral( "none" );
5858

59-
QString uri = geomType + '?';
60-
61-
bool first = true;
59+
QStringList parts;
6260
if ( crs.isValid() )
6361
{
64-
uri += QStringLiteral( "crs=" ) + crs.authid();
65-
first = false;
62+
parts << QStringLiteral( "crs=" ) + crs.authid();
6663
}
67-
68-
QStringList fieldsStrings;
6964
Q_FOREACH ( const QgsField &field, fields )
7065
{
71-
fieldsStrings << QStringLiteral( "field=%1:%2" ).arg( field.name(), memoryLayerFieldType( field.type() ) );
66+
parts << QStringLiteral( "field=%1:%2" ).arg( field.name(), memoryLayerFieldType( field.type() ) );
7267
}
7368

74-
if ( !fieldsStrings.isEmpty() )
75-
{
76-
if ( !first )
77-
uri += '&';
78-
first = false;
79-
uri += fieldsStrings.join( '&' );
80-
}
69+
QString uri = geomType + '?' + parts.join( '&' );
8170

8271
return new QgsVectorLayer( uri, name, QStringLiteral( "memory" ) );
8372
}

0 commit comments

Comments
 (0)