[Python-checkins] python/dist/src/Objects typeobject.c,2.126.4.16,2.126.4.17
gvanrossum@users.sourceforge.net
gvanrossum@users.sourceforge.net
Tue, 18 Jun 2002 09:47:03 -0700
Update of /cvsroot/python/python/dist/src/Objects
In directory usw-pr-cvs1:/tmp/cvs-serv22197
Modified Files:
Tag: release22-maint
typeobject.c
Log Message:
Backport:
Patch from SF bug 570483 (Tim Northover).
In a fresh interpreter, type.mro(tuple) would segfault, because
PyType_Ready() isn't called for tuple yet. To fix, call
PyType_Ready(type) if type->tp_dict is NULL.
Index: typeobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/typeobject.c,v
retrieving revision 2.126.4.16
retrieving revision 2.126.4.17
diff -C2 -d -r2.126.4.16 -r2.126.4.17
*** typeobject.c 14 Jun 2002 02:28:23 -0000 2.126.4.16
--- typeobject.c 18 Jun 2002 16:46:57 -0000 2.126.4.17
***************
*** 734,737 ****
--- 734,742 ----
PyObject *bases, *result;
+ if(type->tp_dict == NULL) {
+ if(PyType_Ready(type) < 0)
+ return NULL;
+ }
+
bases = type->tp_bases;
n = PyTuple_GET_SIZE(bases);