Skip to content

Commit e25c813

Browse files
committed
Fix SAGA parameter value check
1 parent a26ae3c commit e25c813

1 file changed

Lines changed: 10 additions & 6 deletions

File tree

‎python/plugins/processing/algs/saga/SagaAlgorithm.py‎

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -414,17 +414,21 @@ def checkParameterValues(self, parameters, context):
414414
supported by SAGA, and that raster layers have the same grid extent
415415
"""
416416
extent = None
417-
layers = []
417+
raster_layer_params = []
418418
for param in self.parameterDefinitions():
419+
if param not in parameters or parameters[param.name()] is None:
420+
continue
421+
419422
if isinstance(param, QgsProcessingParameterRasterLayer):
420-
layers.append(parameters[param.name()])
423+
raster_layer_params.append(param.name())
421424
elif (isinstance(param, QgsProcessingParameterMultipleLayers) and
422425
param.layerType() == QgsProcessing.TypeRaster):
423-
if parameters[param.name()]:
424-
layers.extend(parameters[param.name()])
426+
raster_layer_params.extend(param.name())
427+
428+
for layer_param in raster_layer_params:
429+
layer = self.parameterAsRasterLayer(parameters, layer_param, context)
425430

426-
for layer in layers:
427-
if layer is None or layer == '':
431+
if layer is None:
428432
continue
429433
if layer.bandCount() > 1:
430434
return False, self.tr('Input layer {0} has more than one band.\n'

0 commit comments

Comments
 (0)