{
PyObject *res;
- res = PyEval_CallObject(func, args);
+ res = PyObject_Call(func, args, NULL);
if (res == NULL) {
_PyTraceback_Add(funcname, __FILE__, lineno);
XML_StopParser(self->itself, XML_FALSE);
_Py_atomic_store_relaxed(&Handlers[i].tripped, 0);
if (arglist) {
- result = PyEval_CallObject(Handlers[i].func,
- arglist);
+ result = PyObject_Call(Handlers[i].func, arglist, NULL);
Py_DECREF(arglist);
}
if (!result) {
PyObject *
PyObject_CallObject(PyObject *callable, PyObject *args)
{
- return PyEval_CallObjectWithKeywords(callable, args, NULL);
+ assert(!PyErr_Occurred());
+ if (args == NULL) {
+ return _PyObject_CallNoArg(callable);
+ }
+ if (!PyTuple_Check(args)) {
+ PyErr_SetString(PyExc_TypeError,
+ "argument list must be a tuple");
+ return NULL;
+ }
+ return PyObject_Call(callable, args, NULL);
}
if (args == NULL)
goto onError;
- result = PyEval_CallObject(encoder, args);
+ result = PyObject_Call(encoder, args, NULL);
if (result == NULL) {
wrap_codec_error("encoding", encoding);
goto onError;
if (args == NULL)
goto onError;
- result = PyEval_CallObject(decoder,args);
+ result = PyObject_Call(decoder, args, NULL);
if (result == NULL) {
wrap_codec_error("decoding", encoding);
goto onError;