diff options
| author | Benjamin Peterson <benjamin@python.org> | 2011-07-15 14:10:35 -0500 |
|---|---|---|
| committer | Benjamin Peterson <benjamin@python.org> | 2011-07-15 14:10:35 -0500 |
| commit | b2c344b3c8ed3a4d588c134579611da0273d790c (patch) | |
| tree | cb58df08b4e05468dcb36245bb3c6211df5e9331 /Python/ceval.c | |
| parent | d2c873ab847f1b05203b2feba1592a123a830427 (diff) | |
| parent | 30f469fa882ebb308927e30c862774a229e19bc9 (diff) | |
| download | cpython-b2c344b3c8ed3a4d588c134579611da0273d790c.tar.gz | |
merge 3.2 (#11627)
Diffstat (limited to 'Python/ceval.c')
| -rw-r--r-- | Python/ceval.c | 7 |
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; |
