[Python-checkins] CVS: python/dist/src/Python bltinmodule.c,2.198.2.7,2.198.2.8 ceval.c,2.241.2.7,2.241.2.8

Tim Peters tim_one@users.sourceforge.net
2001年7月14日 00:47:37 -0700


Update of /cvsroot/python/python/dist/src/Python
In directory usw-pr-cvs1:/tmp/cvs-serv29618/descr/dist/src/Python
Modified Files:
 Tag: descr-branch
	bltinmodule.c ceval.c 
Log Message:
Merge of trunk tag date2001-07-13 into descr-branch. See PLAN.txt.
Index: bltinmodule.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/bltinmodule.c,v
retrieving revision 2.198.2.7
retrieving revision 2.198.2.8
diff -C2 -r2.198.2.7 -r2.198.2.8
*** bltinmodule.c	2001年07月07日 22:55:30	2.198.2.7
--- bltinmodule.c	2001年07月14日 07:47:35	2.198.2.8
***************
*** 1392,1396 ****
 		return NULL;
 	}
! 	return PyRange_New(ilow, n, istep);
 }
 
--- 1392,1396 ----
 		return NULL;
 	}
! 	return PyRange_New(ilow, n, istep, 1);
 }
 
Index: ceval.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/ceval.c,v
retrieving revision 2.241.2.7
retrieving revision 2.241.2.8
diff -C2 -r2.241.2.7 -r2.241.2.8
*** ceval.c	2001年07月08日 11:51:54	2.241.2.7
--- ceval.c	2001年07月14日 07:47:35	2.241.2.8
***************
*** 113,124 ****
 	gen->gi_frame = f;
 	gen->gi_running = 0;
 	return (PyObject *)gen;
 }
 
 static void
 gen_dealloc(genobject *gen)
 {
 	Py_DECREF(gen->gi_frame);
! 	PyObject_DEL(gen);
 }
 
--- 113,132 ----
 	gen->gi_frame = f;
 	gen->gi_running = 0;
+ 	PyObject_GC_Init(gen);
 	return (PyObject *)gen;
 }
 
+ static int
+ gen_traverse(genobject *gen, visitproc visit, void *arg)
+ {
+ 	return visit((PyObject *)gen->gi_frame, arg);
+ }
+ 
 static void
 gen_dealloc(genobject *gen)
 {
+ 	PyObject_GC_Fini(gen);
 	Py_DECREF(gen->gi_frame);
! 	PyObject_Del(gen);
 }
 
***************
*** 203,211 ****
 statichere PyTypeObject gentype = {
 	PyObject_HEAD_INIT(&PyType_Type)
! 	0,			/* Number of items for varobject */
! 	"generator",		/* Name of this type */
! 	sizeof(genobject),	/* Basic object size */
! 	0,			/* Item size for varobject */
! 	(destructor)gen_dealloc,		/* tp_dealloc */
 	0,					/* tp_print */
 	0, 					/* tp_getattr */
--- 211,220 ----
 statichere PyTypeObject gentype = {
 	PyObject_HEAD_INIT(&PyType_Type)
! 	0,					/* ob_size */
! 	"generator",				/* tp_name */
! 	sizeof(genobject) + PyGC_HEAD_SIZE,	/* tp_basicsize */
! 	0,					/* tp_itemsize */
! 	/* methods */
! 	(destructor)gen_dealloc, 		/* tp_dealloc */
 	0,					/* tp_print */
 	0, 					/* tp_getattr */
***************
*** 222,229 ****
 	0,					/* tp_setattro */
 	0,					/* tp_as_buffer */
! 	Py_TPFLAGS_DEFAULT,			/* tp_flags */
! 	0,					/* tp_doc */
! 	0,					/* tp_traverse */
! 	0,					/* tp_clear */
 	0,					/* tp_richcompare */
 	0,					/* tp_weaklistoffset */
--- 231,238 ----
 	0,					/* tp_setattro */
 	0,					/* tp_as_buffer */
! 	Py_TPFLAGS_DEFAULT | Py_TPFLAGS_GC,	/* tp_flags */
! 	0,					/* tp_doc */
! 	(traverseproc)gen_traverse,		/* tp_traverse */
! 	0,					/* tp_clear */
 	0,					/* tp_richcompare */
 	0,					/* tp_weaklistoffset */

AltStyle によって変換されたページ (->オリジナル) /