diff options
-rw-r--r-- | source/blender/python/intern/bpy_interface.c | 9 | ||||
-rw-r--r-- | source/gameengine/Ketsji/KX_PythonInit.cpp | 15 |
2 files changed, 16 insertions, 8 deletions
diff --git a/source/blender/python/intern/bpy_interface.c b/source/blender/python/intern/bpy_interface.c index f3f05e93930..b9d4c1ae94f 100644 --- a/source/blender/python/intern/bpy_interface.c +++ b/source/blender/python/intern/bpy_interface.c @@ -223,6 +223,7 @@ void BPY_python_start(int argc, const char **argv) { #ifndef WITH_PYTHON_MODULE PyThreadState *py_tstate = NULL; + const char *py_path_bundle = BLI_get_folder(BLENDER_SYSTEM_PYTHON, NULL); /* not essential but nice to set our name */ static wchar_t program_path_wchar[FILE_MAX]; /* python holds a reference */ @@ -233,7 +234,7 @@ void BPY_python_start(int argc, const char **argv) PyImport_ExtendInittab(bpy_internal_modules); /* allow to use our own included python */ - PyC_SetHomePath(BLI_get_folder(BLENDER_SYSTEM_PYTHON, NULL)); + PyC_SetHomePath(py_path_bundle); /* without this the sys.stdout may be set to 'ascii' * (it is on my system at least), where printing unicode values will raise @@ -245,7 +246,11 @@ void BPY_python_start(int argc, const char **argv) /* Python 3.2 now looks for '2.xx/python/include/python3.2d/pyconfig.h' to * parse from the 'sysconfig' module which is used by 'site', * so for now disable site. alternatively we could copy the file. */ - Py_NoSiteFlag = 1; + if (py_path_bundle) { + Py_NoSiteFlag = 1; + } + + Py_FrozenFlag = 1; Py_Initialize(); diff --git a/source/gameengine/Ketsji/KX_PythonInit.cpp b/source/gameengine/Ketsji/KX_PythonInit.cpp index a7078860da3..28c4630c43e 100644 --- a/source/gameengine/Ketsji/KX_PythonInit.cpp +++ b/source/gameengine/Ketsji/KX_PythonInit.cpp @@ -1843,19 +1843,24 @@ PyObject* initGamePlayerPythonScripting(const STR_String& progname, TPythonSecur * somehow it remembers the sys.path - Campbell */ static bool first_time = true; - + char *py_path_bundle = BLI_get_folder(BLENDER_SYSTEM_PYTHON, NULL); + #if 0 // TODO - py3 STR_String pname = progname; Py_SetProgramName(pname.Ptr()); #endif - Py_NoSiteFlag=1; - Py_FrozenFlag=1; + + if (py_path_bundle != NULL) { + Py_NoSiteFlag = 1; + } + + Py_FrozenFlag = 1; /* must run before python initializes */ PyImport_ExtendInittab(bge_internal_modules); /* find local python installation */ - PyC_SetHomePath(BLI_get_folder(BLENDER_SYSTEM_PYTHON, NULL)); + PyC_SetHomePath(py_path_bundle); Py_Initialize(); @@ -1929,8 +1934,6 @@ PyObject* initGamePythonScripting(const STR_String& progname, TPythonSecurityLev STR_String pname = progname; Py_SetProgramName(pname.Ptr()); #endif - Py_NoSiteFlag=1; - Py_FrozenFlag=1; #ifdef WITH_AUDASPACE /* accessing a SoundActuator's sound results in a crash if aud is not initialized... */ |