From c71d2a9afd518ed264a129a55bc9c399fe173df2 Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Wed, 19 Mar 2008 22:47:48 +0000 Subject: [PATCH] Remove unnecessary traceback save/restore pair. --- Objects/abstract.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/Objects/abstract.c b/Objects/abstract.c index 0ec6dee2cd..6d948d4b6b 100644 --- a/Objects/abstract.c +++ b/Objects/abstract.c @@ -2907,22 +2907,20 @@ int PyObject_IsInstance(PyObject *inst, PyObject *cls) { static PyObject *name = NULL; - PyObject *t, *v, *tb; PyObject *checker; /* Quick test for an exact match */ if (Py_TYPE(inst) == (PyTypeObject *)cls) return 1; - PyErr_Fetch(&t, &v, &tb); - if (name == NULL) { name = PyString_InternFromString("__instancecheck__"); if (name == NULL) return -1; } checker = PyObject_GetAttr(cls, name); - PyErr_Restore(t, v, tb); + if (checker == NULL && PyErr_Occurred()) + PyErr_Clear(); if (checker != NULL) { PyObject *res; int ok = -1; -- 2.40.0