Mercurial > cpython-lru_cache-weakref
diff Objects/typeobject.c @ 23140:46ffb149ea73 2.2
backport gvanrossum's patch:
SF bug #541883 (Vincent Fiack).
A stupid bug in object_set_class(): didn't check for value==NULL
before checking its type.
Bugfix candidate.
Original patches were:
python/dist/src/Objects/typeobject.c:2.142
| author | Anthony Baxter <anthonybaxter@gmail.com> |
|---|---|
| date | Thu, 18 Apr 2002 05:11:50 +0000 |
| parents | 90adbcf62013 |
| children | ce1da2f97807 |
line wrap: on
line diff
--- a/Objects/typeobject.c Thu Apr 18 05:10:58 2002 +0000 +++ b/Objects/typeobject.c Thu Apr 18 05:11:50 2002 +0000 @@ -1589,6 +1589,11 @@ PyTypeObject *old = self->ob_type; PyTypeObject *new, *newbase, *oldbase; + if (value == NULL) { + PyErr_SetString(PyExc_TypeError, + "can't delete __class__ attribute"); + return -1; + } if (!PyType_Check(value)) { PyErr_Format(PyExc_TypeError, "__class__ must be set to new-style class, not '%s' object",
