Skip to content

Commit

Permalink
improve parameter conversion for use in source iterating mode when
Browse files Browse the repository at this point in the history
parameter value is a string and does not contain dots (fix #48383)
  • Loading branch information
alexbruy authored and nyalldawson committed Jun 18, 2022
1 parent cf1f85b commit d486358
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/core/processing/qgsprocessingutils.cpp
Expand Up @@ -1020,7 +1020,7 @@ QVariant QgsProcessingUtils::generateIteratingDestination( const QVariant &input
// assume a filename type output for now
// TODO - uris?
int lastIndex = res.lastIndexOf( '.' );
return QString( res.left( lastIndex ) + '_' + id.toString() + res.mid( lastIndex ) );
return lastIndex >= 0 ? QString( res.left( lastIndex ) + '_' + id.toString() + res.mid( lastIndex ) ) : QString( res + '_' + id.toString() );
}
}
}
Expand Down
1 change: 1 addition & 0 deletions tests/src/analysis/testqgsprocessing.cpp
Expand Up @@ -9703,6 +9703,7 @@ void TestQgsProcessing::generateIteratingDestination()
QCOMPARE( QgsProcessingUtils::generateIteratingDestination( "/home/bif.o/ape.shp", 2, context ).toString(), QStringLiteral( "/home/bif.o/ape_2.shp" ) );
QCOMPARE( QgsProcessingUtils::generateIteratingDestination( QgsProcessing::TEMPORARY_OUTPUT, 2, context ).toString(), QgsProcessing::TEMPORARY_OUTPUT );
QCOMPARE( QgsProcessingUtils::generateIteratingDestination( QgsProperty::fromValue( QgsProcessing::TEMPORARY_OUTPUT ), 2, context ).toString(), QgsProcessing::TEMPORARY_OUTPUT );
QCOMPARE( QgsProcessingUtils::generateIteratingDestination( "/home/user/folder", 1, context ).toString(), QStringLiteral( "/home/user/folder_1" ) );

QgsProject p;
QgsProcessingOutputLayerDefinition def;
Expand Down

0 comments on commit d486358

Please sign in to comment.