Salome HOME
Fix SHAPER_HDF_BearingSeparator test after 520aea
[modules/kernel.git] / src / Launcher / Launcher_Job_PythonSALOME.cxx
index 658e6c4c9689373a109c548a02d1b52b1d23d769..6b803e36e37dc18f9a54755987066bff90311114 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2009-2016  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2009-2021  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -20,6 +20,7 @@
 // Author: AndrĂ© RIBES - EDF R&D
 //
 #include "Launcher_Job_PythonSALOME.hxx"
+#include <sys/stat.h>
 
 const char Launcher::Job_PythonSALOME::TYPE_NAME[] = "python_salome";
 
@@ -39,5 +40,10 @@ Launcher::Job_PythonSALOME::setJobFile(const std::string & job_file)
 void
 Launcher::Job_PythonSALOME::addJobTypeSpecificScript(std::ofstream & launch_script_stream)
 {
-  launch_script_stream << _resource_definition.AppliPath << "/salome shell -p \"$appli_port\" python " << _job_file_name_complete << " > logs/python_" << _launch_date << ".log 2>&1" << std::endl;
+  struct stat statbuf;
+  if(stat(getenv("APPLI"), &statbuf) ==0 &&  S_ISREG(statbuf.st_mode))
+      // case where AppliPath hold a salome launcher file
+      launch_script_stream << _resource_definition.AppliPath << " shell -- python " << _job_file_name_complete << " > logs/python_" << _launch_date << ".log 2>&1" << std::endl;
+  else
+      launch_script_stream << _resource_definition.AppliPath << "/salome shell -- python " << _job_file_name_complete << " > logs/python_" << _launch_date << ".log 2>&1" << std::endl;
 }