Skip to content

Commit

Permalink
fix #49973
Browse files Browse the repository at this point in the history
  • Loading branch information
vcloarec authored and nyalldawson committed Nov 19, 2022
1 parent 8448b59 commit e4f40ea
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 12 deletions.
4 changes: 2 additions & 2 deletions src/analysis/processing/qgsalgorithmexportmesh.cpp
Expand Up @@ -210,7 +210,7 @@ void QgsExportMeshOnElement::initAlgorithm( const QVariantMap &configuration )
QStringLiteral( "DATASET_GROUPS" ),
QObject::tr( "Dataset groups" ),
QStringLiteral( "INPUT" ),
supportedDataType() ) );
supportedDataType(), true ) );

addParameter( new QgsProcessingParameterMeshDatasetTime(
QStringLiteral( "DATASET_TIME" ),
Expand Down Expand Up @@ -333,7 +333,7 @@ QVariantMap QgsExportMeshOnElement::processAlgorithm( const QVariantMap &paramet

QList<QgsMeshDatasetGroupMetadata> metaList;
metaList.reserve( mDataPerGroup.size() );
for ( const DataGroup &dataGroup : mDataPerGroup )
for ( const DataGroup &dataGroup : std::as_const( mDataPerGroup ) )
metaList.append( dataGroup.metadata );
QgsFields fields = createFields( metaList, mExportVectorOption );

Expand Down
11 changes: 3 additions & 8 deletions src/core/processing/qgsprocessingparametermeshdataset.cpp
Expand Up @@ -117,18 +117,13 @@ QList<int> QgsProcessingParameterMeshDatasetGroups::valueAsDatasetGroup( const Q
QList<int> ret;

// if invalid or empty, return only the group 0
if ( !value.isValid() )
ret << 0;
else
if ( value.isValid() )
{
if ( value.type() == QVariant::List )
{
const QVariantList varList = value.toList();
if ( varList.isEmpty() )
ret << 0;
else
for ( const QVariant &v : varList )
ret << v.toInt();
for ( const QVariant &v : varList )
ret << v.toInt();
}
else
{
Expand Down
4 changes: 2 additions & 2 deletions tests/src/analysis/testqgsprocessing.cpp
Expand Up @@ -8560,8 +8560,8 @@ void TestQgsProcessing::parameterMeshDatasetGroups()
QgsProject project;
context.setProject( &project );

QCOMPARE( QgsProcessingParameterMeshDatasetGroups::valueAsDatasetGroup( QVariant() ), QList<int>( {0} ) );
QCOMPARE( QgsProcessingParameterMeshDatasetGroups::valueAsDatasetGroup( QVariantList() ), QList<int>( {0} ) );
QCOMPARE( QgsProcessingParameterMeshDatasetGroups::valueAsDatasetGroup( QVariant() ), QList<int>() );
QCOMPARE( QgsProcessingParameterMeshDatasetGroups::valueAsDatasetGroup( QVariantList() ), QList<int>() );
QCOMPARE( QgsProcessingParameterMeshDatasetGroups::valueAsDatasetGroup( 3 ), QList<int>( {3} ) );
QCOMPARE( QgsProcessingParameterMeshDatasetGroups::valueAsDatasetGroup( QVariant( "3" ) ), QList<int>( {3} ) );
QCOMPARE( QgsProcessingParameterMeshDatasetGroups::valueAsDatasetGroup( QVariantList( { "3", "4", "5"} ) ), QList<int>( {3, 4, 5 } ) );
Expand Down

0 comments on commit e4f40ea

Please sign in to comment.