Issue #9605: posix.getlogin() decodes the username with file filesystem

encoding and surrogateescape error handler. Patch written by David Watson.

Reindent also posix_getlogin(), and fix a typo in the NEWS file.
This commit is contained in:
Victor Stinner 2010-08-15 09:33:08 +00:00
parent 61ec5dca2b
commit e039ffe41d
2 changed files with 7 additions and 5 deletions

View file

@ -4354,13 +4354,12 @@ posix_getlogin(PyObject *self, PyObject *noargs)
name = getlogin();
if (name == NULL) {
if (errno)
posix_error();
posix_error();
else
PyErr_SetString(PyExc_OSError,
"unable to determine login name");
PyErr_SetString(PyExc_OSError, "unable to determine login name");
}
else
result = PyUnicode_FromString(name);
result = PyUnicode_DecodeFSDefault(name);
errno = old_errno;
return result;