run.command(): Fix app cleanup with exitOnError=False
run.command(): Fix app cleanup with exitOnError=False

In rare instances, run.command() may be run with the argument exitOnError=False, allowing the underlying command to fail without aborting the script. When this occurs, only a warning-level message is issued. However, due to misplacement of code, such a circumstance would lead to the temporary directory not being erased on script completion, even if the script goes on to completion. This fix ensures that forcing the temporary directory to be retained only occurs if the underlying command both fails and is not permitted to fail.

MRtrix3/mrtrix3,MRtrix3/mrtrix3,MRtrix3/mrtrix3,MRtrix3/mrtrix3,MRtrix3/mrtrix3,MRtrix3/mrtrix3