From: Benjamin Peterson Date: Wed, 14 Dec 2016 07:27:56 +0000 (-0800) Subject: Backed out changeset ea904d4b3634 X-Git-Tag: v2.7.13~2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d1aad3fceb3d69c9b9bceb9899fc2d57ff462844;p=python Backed out changeset ea904d4b3634 --- diff --git a/Objects/typeobject.c b/Objects/typeobject.c index 30da5db8ac..169a23fe84 100644 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@ -6314,12 +6314,12 @@ update_one_slot(PyTypeObject *type, slotdef *p) specific = (void *)slot_tp_new; } else { - PyTypeObject *staticbase = type->tp_base; specific = ((PyTypeObject *)self)->tp_new; /* Check that the user does not do anything silly and unsafe like object.__new__(dict). To do this, we check that the most derived base that's not a heap type is this type. */ + PyTypeObject *staticbase = type->tp_base; while (staticbase && (staticbase->tp_flags & Py_TPFLAGS_HEAPTYPE)) staticbase = staticbase->tp_base;