From: Serhiy Storchaka Date: Fri, 29 Apr 2016 06:10:55 +0000 (+0300) Subject: Issue #26822: Decreased an overhead of using _PyArg_NoKeywords() in calls of X-Git-Tag: v3.6.0a1~101^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=6dfcde5e29876beb59e26929e222a514aa002cdd;p=thirdparty%2FPython%2Fcpython.git Issue #26822: Decreased an overhead of using _PyArg_NoKeywords() in calls of itemgetter, attrgetter and methodcaller objects. --- diff --git a/Modules/_operator.c b/Modules/_operator.c index 2f1ee0ed907a..eb4f3a34edbf 100644 --- a/Modules/_operator.c +++ b/Modules/_operator.c @@ -460,7 +460,7 @@ itemgetter_call(itemgetterobject *ig, PyObject *args, PyObject *kw) PyObject *obj, *result; Py_ssize_t i, nitems=ig->nitems; - if (!_PyArg_NoKeywords("itemgetter", kw)) + if (kw != NULL && !_PyArg_NoKeywords("itemgetter", kw)) return NULL; if (!PyArg_UnpackTuple(args, "itemgetter", 1, 1, &obj)) return NULL; @@ -749,7 +749,7 @@ attrgetter_call(attrgetterobject *ag, PyObject *args, PyObject *kw) PyObject *obj, *result; Py_ssize_t i, nattrs=ag->nattrs; - if (!_PyArg_NoKeywords("attrgetter", kw)) + if (kw != NULL && !_PyArg_NoKeywords("attrgetter", kw)) return NULL; if (!PyArg_UnpackTuple(args, "attrgetter", 1, 1, &obj)) return NULL; @@ -992,7 +992,7 @@ methodcaller_call(methodcallerobject *mc, PyObject *args, PyObject *kw) { PyObject *method, *obj, *result; - if (!_PyArg_NoKeywords("methodcaller", kw)) + if (kw != NULL && !_PyArg_NoKeywords("methodcaller", kw)) return NULL; if (!PyArg_UnpackTuple(args, "methodcaller", 1, 1, &obj)) return NULL;