diff options
Diffstat (limited to 'Python')
-rw-r--r-- | Python/ceval.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/Python/ceval.c b/Python/ceval.c index e2f38acc47..2c2104e034 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -2997,13 +2997,14 @@ do_raise(PyObject *type, PyObject *value, PyObject *tb) Py_DECREF(tmp); } - if (PyString_CheckExact(type)) + if (PyString_CheckExact(type)) { /* Raising builtin string is deprecated but still allowed -- * do nothing. Raising an instance of a new-style str * subclass is right out. */ - PyErr_Warn(PyExc_PendingDeprecationWarning, - "raising a string exception is deprecated"); - + if (-1 == PyErr_Warn(PyExc_PendingDeprecationWarning, + "raising a string exception is deprecated")) + goto raise_error; + } else if (PyClass_Check(type)) PyErr_NormalizeException(&type, &value, &tb); |