From 26cffde4c2950ac2afb41f19a65a28c4e905060d Mon Sep 17 00:00:00 2001 From: Mark Hammond Date: Mon, 14 May 2001 12:17:34 +0000 Subject: [PATCH] Fix the Py_FileSystemDefaultEncoding checkin - declare the variable in a fileobject.h, and initialize it in bltinmodule. --- Include/fileobject.h | 5 +++++ Modules/posixmodule.c | 10 ---------- Python/bltinmodule.c | 9 ++++++++- 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/Include/fileobject.h b/Include/fileobject.h index aefeffec4e6..a3670c2f6a0 100644 --- a/Include/fileobject.h +++ b/Include/fileobject.h @@ -23,6 +23,11 @@ extern DL_IMPORT(int) PyFile_SoftSpace(PyObject *, int); extern DL_IMPORT(int) PyFile_WriteString(char *, PyObject *); extern DL_IMPORT(int) PyObject_AsFileDescriptor(PyObject *); +/* The default encoding used by the platform file system APIs + If non-NULL, this is different than the default encoding for strings +*/ +extern DL_IMPORT(const char *) Py_FileSystemDefaultEncoding; + #ifdef __cplusplus } #endif diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 87d584ec279..430a44a8583 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -233,16 +233,6 @@ extern int lstat(const char *, struct stat *); #endif /* MS_WIN32 */ #endif /* _MSC_VER */ -/* The default encoding used by the platform file system APIs - If non-NULL, this is almost certainly different than the default - encoding for strings (otherwise it can remain NULL!) -*/ -#ifdef MS_WIN32 -const char *Py_FileSystemDefaultEncoding = "mbcs"; -#else -const char *Py_FileSystemDefaultEncoding = NULL; /* use default */ -#endif - #if defined(PYCC_VACPP) && defined(PYOS_OS2) #include #endif /* OS2 */ diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c index 5ffecb3443e..b647f3b74d2 100644 --- a/Python/bltinmodule.c +++ b/Python/bltinmodule.c @@ -13,7 +13,14 @@ #include #endif -extern const char *Py_FileSystemDefaultEncoding; +/* The default encoding used by the platform file system APIs + Can remain NULL for all platforms that don't have such a concept +*/ +#ifdef MS_WIN32 +const char *Py_FileSystemDefaultEncoding = "mbcs"; +#else +const char *Py_FileSystemDefaultEncoding = NULL; /* use default */ +#endif /* Forward */ static PyObject *filterstring(PyObject *, PyObject *);