diff --git a/src/core/processing/qgsprocessingparameters.cpp b/src/core/processing/qgsprocessingparameters.cpp index 18c0c6382df..4bb2d5efee4 100644 --- a/src/core/processing/qgsprocessingparameters.cpp +++ b/src/core/processing/qgsprocessingparameters.cpp @@ -4933,7 +4933,7 @@ QString QgsProcessingParameterEnum::valueAsPythonString( const QVariant &value, if ( mUsesStaticStrings ) { - if ( value.type() == QVariant::StringList ) + if ( value.type() == QVariant::List || value.type() == QVariant::StringList ) { QStringList parts; const QStringList constList = value.toStringList(); diff --git a/src/gui/processing/qgsprocessingwidgetwrapperimpl.cpp b/src/gui/processing/qgsprocessingwidgetwrapperimpl.cpp index f89fd34a721..5ced6487cef 100644 --- a/src/gui/processing/qgsprocessingwidgetwrapperimpl.cpp +++ b/src/gui/processing/qgsprocessingwidgetwrapperimpl.cpp @@ -2451,8 +2451,19 @@ void QgsProcessingEnumPanelWidget::showDialog() if ( mParam ) { availableOptions.reserve( mParam->options().size() ); - for ( int i = 0; i < mParam->options().count(); ++i ) - availableOptions << i; + + if ( mParam->usesStaticStrings() ) + { + for ( QString o : mParam->options() ) + { + availableOptions << o; + } + } + else + { + for ( int i = 0; i < mParam->options().count(); ++i ) + availableOptions << i; + } } const QStringList options = mParam ? mParam->options() : QStringList();