diff options
Diffstat (limited to 'Python/errors.c')
-rw-r--r-- | Python/errors.c | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/Python/errors.c b/Python/errors.c index 3785e6981c..261dd7b27c 100644 --- a/Python/errors.c +++ b/Python/errors.c @@ -191,19 +191,7 @@ PyErr_GivenExceptionMatches(PyObject *err, PyObject *exc) err = PyExceptionInstance_Class(err); if (PyExceptionClass_Check(err) && PyExceptionClass_Check(exc)) { - int res = 0; - PyObject *exception, *value, *tb; - PyErr_Fetch(&exception, &value, &tb); - /* PyObject_IsSubclass() can recurse and therefore is - not safe (see test_bad_getattr in test.pickletester). */ - res = PyType_IsSubtype((PyTypeObject *)err, (PyTypeObject *)exc); - /* This function must not fail, so print the error here */ - if (res == -1) { - PyErr_WriteUnraisable(err); - res = 0; - } - PyErr_Restore(exception, value, tb); - return res; + return PyType_IsSubtype((PyTypeObject *)err, (PyTypeObject *)exc); } return err == exc; |