diff --git a/pydra/engine/specs.py b/pydra/engine/specs.py index c31705be7d..41bd8f44d1 100644 --- a/pydra/engine/specs.py +++ b/pydra/engine/specs.py @@ -451,9 +451,14 @@ def collect_additional_outputs(self, inputs, output_dir, outputs): input_value = getattr(inputs, fld.name, attr.NOTHING) if input_value is not attr.NOTHING: if TypeParser.contains_type(FileSet, fld.type): - label = f"output field '{fld.name}' of {self}" - input_value = TypeParser(fld.type, label=label).coerce(input_value) - additional_out[fld.name] = input_value + if input_value is not False: + label = f"output field '{fld.name}' of {self}" + input_value = TypeParser(fld.type, label=label).coerce( + input_value + ) + additional_out[fld.name] = input_value + else: + additional_out[fld.name] = input_value elif ( fld.default is None or fld.default == attr.NOTHING ) and not fld.metadata: # TODO: is it right?