diff --git a/src/core/tandem_run/tandemcondorprocess.cpp b/src/core/tandem_run/tandemcondorprocess.cpp
index 50142c0511f9ce717d756146e25af7bd9bfd3a2b..5c4b46c588cbba14871edb048d8783ef4ecdd540 100644
--- a/src/core/tandem_run/tandemcondorprocess.cpp
+++ b/src/core/tandem_run/tandemcondorprocess.cpp
@@ -101,6 +101,7 @@ TandemCondorProcess::prepareTemporaryDirectory()
   QString condor_tmp_dir =
     QString("%1/xtpcpp")
       .arg(settings.value("condor/tmp_dir", "/tmp").toString());
+
   if(_p_tmp_dir != nullptr)
     {
       delete _p_tmp_dir;
@@ -251,6 +252,13 @@ TandemCondorProcess::run()
                 settings
                   .value("timstof/tandemwrapper_path", "/usr/bin/tandemwrapper")
                   .toString();
+              QString tims_tmp_dir_path =
+                settings.value("timstof/tmp_dir_path", QDir::tempPath())
+                  .toString();
+              if(!QDir(tims_tmp_dir_path).exists())
+                {
+                  QDir().mkdir(tims_tmp_dir_path);
+                }
 
               QString centroidOption =
                 new_param.getValue("spectrum, timstof MS2 centroid parameters");
@@ -259,11 +267,9 @@ TandemCondorProcess::run()
               *p_out
                 << "Arguments        = "
                 << QFileInfo(p_xml_input_file->fileName()).absoluteFilePath()
-                << " --tmp "
-                << settings.value("timstof/tmp_dir_path", QDir::tempPath())
-                     .toString()
-                << " --tandem " << _tandem_run_batch._tandem_bin_path
-                << " --centroid " << centroidOption << endl;
+                << " --tmp " << tims_tmp_dir_path << " --tandem "
+                << _tandem_run_batch._tandem_bin_path << " --centroid "
+                << centroidOption << endl;
             }
           *p_out << "Queue" << endl;
         }