deal with old-style classes in issubclass and isinstance
diff --git a/Objects/abstract.c b/Objects/abstract.c
index 5fb7bfc..2266fa1 100644
--- a/Objects/abstract.c
+++ b/Objects/abstract.c
@@ -2927,7 +2927,7 @@
 		return r;
 	}
 
-	if (PyInstance_Check(cls)) {
+	if (PyClass_Check(cls) || PyInstance_Check(cls)) {
 		checker = PyObject_GetAttrString(cls, "__instancecheck__");
 		if (checker == NULL) {
 			if (PyErr_ExceptionMatches(PyExc_AttributeError))
@@ -3013,7 +3013,7 @@
  		Py_LeaveRecursiveCall();
  		return r;
  	}
-	if (PyInstance_Check(cls)) {
+	if (PyClass_Check(cls) || PyInstance_Check(cls)) {
 		PyErr_Fetch(&t, &v, &tb);
 		checker = PyObject_GetAttr(cls, name);
 		if (checker == NULL &&