diff options
author | Victor Stinner <victor.stinner@gmail.com> | 2016-12-04 21:59:09 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@gmail.com> | 2016-12-04 21:59:09 (GMT) |
commit | de4ae3d4869e88dda8bfbad24880cb398160a7a0 (patch) | |
tree | b8c42842a31f408c9fe09993e19fba49d60b2dcf /Objects/bytesobject.c | |
parent | c8d03187ff85326ab8b24af06f8a4e391365f42a (diff) | |
download | cpython-de4ae3d4869e88dda8bfbad24880cb398160a7a0.zip cpython-de4ae3d4869e88dda8bfbad24880cb398160a7a0.tar.gz cpython-de4ae3d4869e88dda8bfbad24880cb398160a7a0.tar.bz2 |
Backed out changeset b9c9691c72c5
Issue #28858: The change b9c9691c72c5 introduced a regression. It seems like
_PyObject_CallArg1() uses more stack memory than
PyObject_CallFunctionObjArgs().
Diffstat (limited to 'Objects/bytesobject.c')
-rw-r--r-- | Objects/bytesobject.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/Objects/bytesobject.c b/Objects/bytesobject.c index b82945a..5cdc2ca 100644 --- a/Objects/bytesobject.c +++ b/Objects/bytesobject.c @@ -549,7 +549,7 @@ format_obj(PyObject *v, const char **pbuf, Py_ssize_t *plen) /* does it support __bytes__? */ func = _PyObject_LookupSpecial(v, &PyId___bytes__); if (func != NULL) { - result = _PyObject_CallNoArg(func); + result = PyObject_CallFunctionObjArgs(func, NULL); Py_DECREF(func); if (result == NULL) return NULL; @@ -2331,7 +2331,8 @@ bytes_fromhex_impl(PyTypeObject *type, PyObject *string) { PyObject *result = _PyBytes_FromHex(string, 0); if (type != &PyBytes_Type && result != NULL) { - Py_SETREF(result, _PyObject_CallArg1((PyObject *)type, result)); + Py_SETREF(result, PyObject_CallFunctionObjArgs((PyObject *)type, + result, NULL)); } return result; } @@ -2568,7 +2569,7 @@ bytes_new(PyTypeObject *type, PyObject *args, PyObject *kwds) PyObject_Bytes doesn't do. */ func = _PyObject_LookupSpecial(x, &PyId___bytes__); if (func != NULL) { - new = _PyObject_CallNoArg(func); + new = PyObject_CallFunctionObjArgs(func, NULL); Py_DECREF(func); if (new == NULL) return NULL; |