]> granicus.if.org Git - python/commit
Use _PyObject_CallMethodIdObjArgs() in _ctypes
authorVictor Stinner <victor.stinner@gmail.com>
Fri, 9 Dec 2016 14:18:31 +0000 (15:18 +0100)
committerVictor Stinner <victor.stinner@gmail.com>
Fri, 9 Dec 2016 14:18:31 +0000 (15:18 +0100)
commit56707648120de77a5167c363cc4104dfe2cef5be
tree505f07e4094676895b21139be187b1c5c165d985
parentddc120f4cf6fb049570d5483bb7678491d27b3d5
Use _PyObject_CallMethodIdObjArgs() in _ctypes

Issue #28915: Replace _PyObject_CallMethodId() with
_PyObject_CallMethodIdObjArgs() in unpickle(). _PyObject_CallMethodIdObjArgs()
avoids the creation of a temporary tuple and doesn't have to parse a format
string.

Replace _PyObject_CallMethodId() with _PyObject_GetAttrId()+PyObject_Call() for
the second call since it requires to "unpack" a tuple.

Add also a check in the type of the second parameter (state): it must be a
tuple.
Modules/_ctypes/callproc.c