]> SALOME platform Git repositories - modules/kernel.git/commitdiff
Salome HOME
CCAR: fix the use of Py_GetProgramName(file) when initializing embedded Python.
authorcaremoli <caremoli>
Thu, 3 Feb 2011 17:14:56 +0000 (17:14 +0000)
committercaremoli <caremoli>
Thu, 3 Feb 2011 17:14:56 +0000 (17:14 +0000)
If SALOME_PYTHON environment variable (path to the installed python executable)
is defined use it for the file argument.
This variable can be used in place of the dangerous use of PYTHONHOME.

src/Container/Container_init_python.cxx

index 3a532b222eb5017b72c2e41df0f66a9e4e959967..df48142b7f45543ca3516c82270e470f49c48b47 100644 (file)
@@ -52,7 +52,9 @@ void KERNEL_PYTHON::init_python(int argc, char **argv)
   MESSAGE("=================================================================");
   // set stdout to line buffering (aka C++ std::cout)
   setvbuf(stdout, (char *)NULL, _IOLBF, BUFSIZ);
-  Py_SetProgramName(argv[0]);
+  char* salome_python=getenv("SALOME_PYTHON");
+  if(salome_python != 0)
+    Py_SetProgramName(salome_python);
   Py_Initialize(); // Initialize the interpreter
   PySys_SetArgv(argc, argv);
   KERNEL_PYTHON::_interp = PyThreadState_Get()->interp;