summaryrefslogtreecommitdiff
path: root/Python/sysmodule.c
diff options
context:
space:
mode:
authorMartin v. Löwis <martin@v.loewis.de>2008-10-03 16:09:28 +0000
committerMartin v. Löwis <martin@v.loewis.de>2008-10-03 16:09:28 +0000
commite387a985e0257577a16fc168c6ebed7976de86df (patch)
tree786e66ba5c4c3bd9b72385c10352f506b9281e72 /Python/sysmodule.c
parentd18ceab2c5abf6eaad1279c1f4234e8abcaee4c1 (diff)
downloadcpython-e387a985e0257577a16fc168c6ebed7976de86df.tar.gz
Issue #3187: Add sys.setfilesystemencoding.
Diffstat (limited to 'Python/sysmodule.c')
-rw-r--r--Python/sysmodule.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index f4118d6899..89f50b536e 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -216,7 +216,24 @@ Return the encoding used to convert Unicode filenames in\n\
operating system filenames."
);
+static PyObject *
+sys_setfilesystemencoding(PyObject *self, PyObject *args)
+{
+ PyObject *new_encoding;
+ if (!PyArg_ParseTuple(args, "U:setfilesystemencoding", &new_encoding))
+ return NULL;
+ if (_Py_SetFileSystemEncoding(new_encoding))
+ return NULL;
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+PyDoc_STRVAR(setfilesystemencoding_doc,
+"setfilesystemencoding(string) -> None\n\
+\n\
+Set the encoding used to convert Unicode filenames in\n\
+operating system filenames."
+);
static PyObject *
sys_intern(PyObject *self, PyObject *args)
@@ -872,6 +889,8 @@ static PyMethodDef sys_methods[] = {
#endif
{"setdefaultencoding", sys_setdefaultencoding, METH_VARARGS,
setdefaultencoding_doc},
+ {"setfilesystemencoding", sys_setfilesystemencoding, METH_VARARGS,
+ setfilesystemencoding_doc},
{"setcheckinterval", sys_setcheckinterval, METH_VARARGS,
setcheckinterval_doc},
{"getcheckinterval", sys_getcheckinterval, METH_NOARGS,