Merged revisions 69205 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r69205 | martin.v.loewis | 2009-02-02 15:23:16 +0100 (Mo, 02 Feb 2009) | 1 line
Issue #4494: Fix build with Py_NO_ENABLE_SHARED on Windows.
........
diff --git a/PC/getpathp.c b/PC/getpathp.c
index e62b936..78f4465 100644
--- a/PC/getpathp.c
+++ b/PC/getpathp.c
@@ -201,6 +201,7 @@
}
#ifdef MS_WINDOWS
+#ifdef Py_ENABLE_SHARED
/* a string loaded from the DLL at startup.*/
extern const char *PyWin_DLLVersionString;
@@ -363,6 +364,7 @@
free(keyBuf);
return retval;
}
+#endif /* Py_ENABLE_SHARED */
#endif /* MS_WINDOWS */
static void
@@ -380,6 +382,7 @@
but makes no mention of the null terminator. Play it safe.
PLUS Windows itself defines MAX_PATH as the same, but anyway...
*/
+#ifdef Py_ENABLE_SHARED
wprogpath[MAXPATHLEN]=_T('\0');
if (PyWin_DLLhModule &&
GetModuleFileName(PyWin_DLLhModule, wprogpath, MAXPATHLEN)) {
@@ -388,6 +391,9 @@
dllpath, MAXPATHLEN+1,
NULL, NULL);
}
+#else
+ dllpath[0] = 0;
+#endif
wprogpath[MAXPATHLEN]=_T('\0');
if (GetModuleFileName(NULL, wprogpath, MAXPATHLEN)) {
WideCharToMultiByte(CP_ACP, 0,
@@ -398,9 +404,13 @@
}
#else
/* static init of progpath ensures final char remains \0 */
+#ifdef Py_ENABLE_SHARED
if (PyWin_DLLhModule)
if (!GetModuleFileName(PyWin_DLLhModule, dllpath, MAXPATHLEN))
dllpath[0] = 0;
+#else
+ dllpath[0] = 0;
+#endif
if (GetModuleFileName(NULL, progpath, MAXPATHLEN))
return;
#endif
@@ -501,8 +511,10 @@
}
skiphome = pythonhome==NULL ? 0 : 1;
+#ifdef Py_ENABLE_SHARED
machinepath = getpythonregpath(HKEY_LOCAL_MACHINE, skiphome);
userpath = getpythonregpath(HKEY_CURRENT_USER, skiphome);
+#endif
/* We only use the default relative PYTHONPATH if we havent
anything better to use! */
skipdefault = envpath!=NULL || pythonhome!=NULL || \