diff options
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/posixmodule.c | 2 | ||||
-rw-r--r-- | Modules/socketmodule.c | 5 |
2 files changed, 3 insertions, 4 deletions
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 8ba2975..6b832c0 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -7891,7 +7891,7 @@ posix_strerror(PyObject *self, PyObject *args) "strerror() argument out of range"); return NULL; } - return PyUnicode_FromString(message); + return PyUnicode_DecodeLocale(message, 1); } diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c index c828d49..132d6c7 100644 --- a/Modules/socketmodule.c +++ b/Modules/socketmodule.c @@ -4032,9 +4032,8 @@ gethost_common(struct hostent *h, struct sockaddr *addr, int alen, int af) if (h->h_addrtype != af) { /* Let's get real error message to return */ - PyErr_SetString(PyExc_OSError, - (char *)strerror(EAFNOSUPPORT)); - + errno = EAFNOSUPPORT; + PyErr_SetFromErrno(PyExc_OSError); return NULL; } |