summaryrefslogtreecommitdiffstats
path: root/Python
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2016-08-19 23:24:22 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2016-08-19 23:24:22 (GMT)
commitc3ccaae6f3469716a7084fb2f5a34cba90b39ee6 (patch)
treefddbdfaa427dc730ef9c8854ad29d8be610eda03 /Python
parent78da82bf3eec2745b32b89ba5850a6f1268dd8aa (diff)
downloadcpython-c3ccaae6f3469716a7084fb2f5a34cba90b39ee6.zip
cpython-c3ccaae6f3469716a7084fb2f5a34cba90b39ee6.tar.gz
cpython-c3ccaae6f3469716a7084fb2f5a34cba90b39ee6.tar.bz2
sys_pyfile_write_unicode() now uses fast call
Issue #27128.
Diffstat (limited to 'Python')
-rw-r--r--Python/sysmodule.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index 74b8560..be8e164 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -2112,7 +2112,7 @@ PySys_SetArgv(int argc, wchar_t **argv)
static int
sys_pyfile_write_unicode(PyObject *unicode, PyObject *file)
{
- PyObject *writer = NULL, *args = NULL, *result = NULL;
+ PyObject *writer = NULL, *result = NULL;
int err;
if (file == NULL)
@@ -2122,11 +2122,7 @@ sys_pyfile_write_unicode(PyObject *unicode, PyObject *file)
if (writer == NULL)
goto error;
- args = PyTuple_Pack(1, unicode);
- if (args == NULL)
- goto error;
-
- result = PyEval_CallObject(writer, args);
+ result = _PyObject_FastCall(writer, &unicode, 1, NULL);
if (result == NULL) {
goto error;
} else {
@@ -2138,7 +2134,6 @@ error:
err = -1;
finally:
Py_XDECREF(writer);
- Py_XDECREF(args);
Py_XDECREF(result);
return err;
}