Fix crash in EXPP_(int|obj)Error. These functions are redundant;

they only differ by return type, so it's easier to just call
PyErr_Format and return appropriately.
This commit is contained in:
Yann Vernier 2005-12-27 15:28:09 +00:00
parent b39465b7fb
commit a61871360f

@ -176,27 +176,29 @@ int EXPP_ReturnIntError( PyObject * type, char *error_msg )
int EXPP_intError(PyObject *type, const char *format, ...)
{
char *error = "";
PyObject *error;
va_list vlist;
va_start(vlist, format);
vsprintf(error, format, vlist);
error = PyString_FromFormatV(format, vlist);
va_end(vlist);
PyErr_SetString(type, error);
PyErr_SetObject(type, error);
Py_DECREF(error);
return -1;
}
//Like EXPP_ReturnPyObjError but takes a printf format string and multiple arguments
PyObject *EXPP_objError(PyObject *type, const char *format, ...)
{
char *error = "";
PyObject *error;
va_list vlist;
va_start(vlist, format);
vsprintf(error, format, vlist);
error = PyString_FromFormatV(format, vlist);
va_end(vlist);
PyErr_SetString(type, error);
PyErr_SetObject(type, error);
Py_DECREF(error);
return NULL;
}