Commit 4db62e11 authored by Serhiy Storchaka's avatar Serhiy Storchaka Committed by GitHub

bpo-35490: Remove the DecodeFSDefault return converter in AC. (#11152)

parent e2af34fc
...@@ -176,7 +176,7 @@ PyDoc_STRVAR(os_ttyname__doc__, ...@@ -176,7 +176,7 @@ PyDoc_STRVAR(os_ttyname__doc__,
#define OS_TTYNAME_METHODDEF \ #define OS_TTYNAME_METHODDEF \
{"ttyname", (PyCFunction)os_ttyname, METH_O, os_ttyname__doc__}, {"ttyname", (PyCFunction)os_ttyname, METH_O, os_ttyname__doc__},
static char * static PyObject *
os_ttyname_impl(PyObject *module, int fd); os_ttyname_impl(PyObject *module, int fd);
static PyObject * static PyObject *
...@@ -184,16 +184,11 @@ os_ttyname(PyObject *module, PyObject *arg) ...@@ -184,16 +184,11 @@ os_ttyname(PyObject *module, PyObject *arg)
{ {
PyObject *return_value = NULL; PyObject *return_value = NULL;
int fd; int fd;
char *_return_value;
if (!PyArg_Parse(arg, "i:ttyname", &fd)) { if (!PyArg_Parse(arg, "i:ttyname", &fd)) {
goto exit; goto exit;
} }
_return_value = os_ttyname_impl(module, fd); return_value = os_ttyname_impl(module, fd);
if (_return_value == NULL) {
goto exit;
}
return_value = PyUnicode_DecodeFSDefault(_return_value);
exit: exit:
return return_value; return return_value;
...@@ -6758,4 +6753,4 @@ exit: ...@@ -6758,4 +6753,4 @@ exit:
#ifndef OS_GETRANDOM_METHODDEF #ifndef OS_GETRANDOM_METHODDEF
#define OS_GETRANDOM_METHODDEF #define OS_GETRANDOM_METHODDEF
#endif /* !defined(OS_GETRANDOM_METHODDEF) */ #endif /* !defined(OS_GETRANDOM_METHODDEF) */
/*[clinic end generated code: output=7ebb53d872bab149 input=a9049054013a1b77]*/ /*[clinic end generated code: output=87a3ebadb91bc46b input=a9049054013a1b77]*/
...@@ -2647,7 +2647,7 @@ os_access_impl(PyObject *module, path_t *path, int mode, int dir_fd, ...@@ -2647,7 +2647,7 @@ os_access_impl(PyObject *module, path_t *path, int mode, int dir_fd,
#ifdef HAVE_TTYNAME #ifdef HAVE_TTYNAME
/*[clinic input] /*[clinic input]
os.ttyname -> DecodeFSDefault os.ttyname
fd: int fd: int
Integer file descriptor handle. Integer file descriptor handle.
...@@ -2657,16 +2657,17 @@ os.ttyname -> DecodeFSDefault ...@@ -2657,16 +2657,17 @@ os.ttyname -> DecodeFSDefault
Return the name of the terminal device connected to 'fd'. Return the name of the terminal device connected to 'fd'.
[clinic start generated code]*/ [clinic start generated code]*/
static char * static PyObject *
os_ttyname_impl(PyObject *module, int fd) os_ttyname_impl(PyObject *module, int fd)
/*[clinic end generated code: output=ed16ad216d813591 input=5f72ca83e76b3b45]*/ /*[clinic end generated code: output=c424d2e9d1cd636a input=9ff5a58b08115c55]*/
{ {
char *ret; char *ret;
ret = ttyname(fd); ret = ttyname(fd);
if (ret == NULL) if (ret == NULL) {
posix_error(); return posix_error();
return ret; }
return PyUnicode_DecodeFSDefault(ret);
} }
#endif #endif
......
...@@ -3166,16 +3166,6 @@ class float_return_converter(double_return_converter): ...@@ -3166,16 +3166,6 @@ class float_return_converter(double_return_converter):
cast = '(double)' cast = '(double)'
class DecodeFSDefault_return_converter(CReturnConverter):
type = 'char *'
def render(self, function, data):
self.declare(data)
self.err_occurred_if_null_pointer("_return_value", data)
data.return_conversion.append(
'return_value = PyUnicode_DecodeFSDefault(_return_value);\n')
def eval_ast_expr(node, globals, *, filename='-'): def eval_ast_expr(node, globals, *, filename='-'):
""" """
Takes an ast.Expr node. Compiles and evaluates it. Takes an ast.Expr node. Compiles and evaluates it.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment