summaryrefslogtreecommitdiffstats
path: root/Objects/moduleobject.c
diff options
context:
space:
mode:
Diffstat (limited to 'Objects/moduleobject.c')
-rw-r--r--Objects/moduleobject.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/Objects/moduleobject.c b/Objects/moduleobject.c
index e454fcf..18914d8 100644
--- a/Objects/moduleobject.c
+++ b/Objects/moduleobject.c
@@ -59,6 +59,7 @@ PyModule_GetName(PyObject *m)
{
PyObject *d;
PyObject *nameobj;
+ char *s;
if (!PyModule_Check(m)) {
PyErr_BadArgument();
return NULL;
@@ -66,11 +67,13 @@ PyModule_GetName(PyObject *m)
d = ((PyModuleObject *)m)->md_dict;
if (d == NULL ||
(nameobj = PyDict_GetItemString(d, "__name__")) == NULL ||
- !PyString_Check(nameobj))
+ !(PyString_Check(nameobj) || PyUnicode_Check(nameobj)))
{
PyErr_SetString(PyExc_SystemError, "nameless module");
return NULL;
}
+ if (PyUnicode_Check(nameobj))
+ nameobj = _PyUnicode_AsDefaultEncodedString(nameobj, "replace");
return PyString_AsString(nameobj);
}