From cdbf50cba1664f72ae6621a89c324a32fea70377 Mon Sep 17 00:00:00 2001 From: Alexey Izbyshev Date: Mon, 20 Aug 2018 23:04:19 +0300 Subject: bpo-34441: Fix ABC.__subclasscheck__ crash on classes with invalid __subclasses__ (GH-8835) The missing NULL check was reported by Svace static analyzer. --- Modules/_abc.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'Modules/_abc.c') diff --git a/Modules/_abc.c b/Modules/_abc.c index 562a2e6d73..ce9140fd03 100644 --- a/Modules/_abc.c +++ b/Modules/_abc.c @@ -665,6 +665,9 @@ _abc__abc_subclasscheck_impl(PyObject *module, PyObject *self, /* 6. Check if it's a subclass of a subclass (recursive). */ subclasses = PyObject_CallMethod(self, "__subclasses__", NULL); + if (subclasses == NULL) { + goto end; + } if (!PyList_Check(subclasses)) { PyErr_SetString(PyExc_TypeError, "__subclasses__() must return a list"); goto end; -- cgit v1.2.1