summaryrefslogtreecommitdiff
path: root/Python/ceval.c
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2011-07-15 14:10:35 -0500
committerBenjamin Peterson <benjamin@python.org>2011-07-15 14:10:35 -0500
commitb2c344b3c8ed3a4d588c134579611da0273d790c (patch)
treecb58df08b4e05468dcb36245bb3c6211df5e9331 /Python/ceval.c
parentd2c873ab847f1b05203b2feba1592a123a830427 (diff)
parent30f469fa882ebb308927e30c862774a229e19bc9 (diff)
downloadcpython-b2c344b3c8ed3a4d588c134579611da0273d790c.tar.gz
merge 3.2 (#11627)
Diffstat (limited to 'Python/ceval.c')
-rw-r--r--Python/ceval.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/Python/ceval.c b/Python/ceval.c
index 5c936376db..6d493633a9 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -3494,6 +3494,13 @@ do_raise(PyObject *exc, PyObject *cause)
value = PyObject_CallObject(exc, NULL);
if (value == NULL)
goto raise_error;
+ if (!PyExceptionInstance_Check(value)) {
+ PyErr_Format(PyExc_TypeError,
+ "calling %R should have returned an instance of "
+ "BaseException, not %R",
+ type, Py_TYPE(value));
+ goto raise_error;
+ }
}
else if (PyExceptionInstance_Check(exc)) {
value = exc;