mirror of
https://github.com/python/cpython.git
synced 2025-07-19 17:25:54 +00:00
Merged revisions 73064 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r73064 | antoine.pitrou | 2009-05-30 23:27:00 +0200 (sam., 30 mai 2009) | 4 lines Issue #5330: C functions called with keyword arguments were not reported by the various profiling modules (profile, cProfile). Patch by Hagen Fürstenau. ........
This commit is contained in:
parent
c06de477a3
commit
8e124f3244
4 changed files with 42 additions and 2 deletions
|
@ -3951,10 +3951,17 @@ do_call(PyObject *func, PyObject ***pp_stack, int na, int nk)
|
|||
PCALL(PCALL_METHOD);
|
||||
else if (PyType_Check(func))
|
||||
PCALL(PCALL_TYPE);
|
||||
else if (PyCFunction_Check(func))
|
||||
PCALL(PCALL_CFUNCTION);
|
||||
else
|
||||
PCALL(PCALL_OTHER);
|
||||
#endif
|
||||
result = PyObject_Call(func, callargs, kwdict);
|
||||
if (PyCFunction_Check(func)) {
|
||||
PyThreadState *tstate = PyThreadState_GET();
|
||||
C_TRACE(result, PyCFunction_Call(func, callargs, kwdict));
|
||||
}
|
||||
else
|
||||
result = PyObject_Call(func, callargs, kwdict);
|
||||
call_fail:
|
||||
Py_XDECREF(callargs);
|
||||
Py_XDECREF(kwdict);
|
||||
|
@ -4039,10 +4046,17 @@ ext_do_call(PyObject *func, PyObject ***pp_stack, int flags, int na, int nk)
|
|||
PCALL(PCALL_METHOD);
|
||||
else if (PyType_Check(func))
|
||||
PCALL(PCALL_TYPE);
|
||||
else if (PyCFunction_Check(func))
|
||||
PCALL(PCALL_CFUNCTION);
|
||||
else
|
||||
PCALL(PCALL_OTHER);
|
||||
#endif
|
||||
result = PyObject_Call(func, callargs, kwdict);
|
||||
if (PyCFunction_Check(func)) {
|
||||
PyThreadState *tstate = PyThreadState_GET();
|
||||
C_TRACE(result, PyCFunction_Call(func, callargs, kwdict));
|
||||
}
|
||||
else
|
||||
result = PyObject_Call(func, callargs, kwdict);
|
||||
ext_call_fail:
|
||||
Py_XDECREF(callargs);
|
||||
Py_XDECREF(kwdict);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue