30 lines
838 B
Diff
30 lines
838 B
Diff
diff -urN a/Modules/getpath.c b/Modules/getpath.c
|
|
--- a/Modules/getpath.c 2014-10-11 14:22:58.332933900 +0100
|
|
+++ b/Modules/getpath.c 2014-10-11 14:22:59.928025200 +0100
|
|
@@ -795,7 +795,10 @@
|
|
|
|
bufsz += wcslen(zip_path) + 1;
|
|
bufsz += wcslen(exec_prefix) + 1;
|
|
-
|
|
+#ifdef MS_WINDOWS
|
|
+ if (_exec_prefix)
|
|
+ bufsz += wcslen(_exec_prefix) + 1;
|
|
+#endif
|
|
buf = (wchar_t *)PyMem_Malloc(bufsz * sizeof(wchar_t));
|
|
if (buf == NULL) {
|
|
Py_FatalError(
|
|
@@ -871,6 +874,13 @@
|
|
}
|
|
else
|
|
wcsncpy(exec_prefix, _exec_prefix, MAXPATHLEN);
|
|
+#ifdef MS_WINDOWS
|
|
+ if (_exec_prefix) {
|
|
+ /* Next add bin folder where the exe was found, for System DLLs e.g. tcl86.dll, tk86.dll */
|
|
+ wcscat(buf, delimiter);
|
|
+ wcscat(buf, _exec_prefix);
|
|
+ }
|
|
+#endif
|
|
|
|
#ifdef MS_WINDOWS
|
|
if (_path) {
|