Index: Objects/fileobject.c =================================================================== --- Objects/fileobject.c (revision 68543) +++ Objects/fileobject.c (working copy) @@ -528,26 +528,16 @@ static PyObject * file_repr(PyFileObject *f) { - if (PyUnicode_Check(f->f_name)) { -#ifdef Py_USING_UNICODE - PyObject *ret = NULL; - PyObject *name = PyUnicode_AsUnicodeEscapeString(f->f_name); - const char *name_str = name ? PyString_AsString(name) : "?"; - ret = PyString_FromFormat("<%s file u'%s', mode '%s' at %p>", - f->f_fp == NULL ? "closed" : "open", - name_str, - PyString_AsString(f->f_mode), - f); - Py_XDECREF(name); - return ret; -#endif - } else { - return PyString_FromFormat("<%s file '%s', mode '%s' at %p>", - f->f_fp == NULL ? "closed" : "open", - PyString_AsString(f->f_name), - PyString_AsString(f->f_mode), - f); - } + PyObject *ret = NULL; + PyObject *name = PyObject_Repr(f->f_name); + const char *name_str = name ? PyString_AsString(name) : "?"; + ret = PyString_FromFormat("<%s file %s, mode '%s' at %p>", + f->f_fp == NULL ? "closed" : "open", + name_str, + PyString_AsString(f->f_mode), + f); + Py_XDECREF(name); + return ret; } static PyObject *