[Python-checkins] python/dist/src/Modules gcmodule.c,2.65,2.66

tim_one@users.sourceforge.net tim_one@users.sourceforge.net
2003年4月06日 16:30:56 -0700


Update of /cvsroot/python/python/dist/src/Modules
In directory sc8-pr-cvs1:/tmp/cvs-serv29154/Modules
Modified Files:
	gcmodule.c 
Log Message:
initgc(): Rewrote to use the PyModule_AddXYZ API; cuts code size.
Index: gcmodule.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/gcmodule.c,v
retrieving revision 2.65
retrieving revision 2.66
diff -C2 -d -r2.65 -r2.66
*** gcmodule.c	6 Apr 2003 19:41:39 -0000	2.65
--- gcmodule.c	6 Apr 2003 23:30:52 -0000	2.66
***************
*** 974,978 ****
 {
 	PyObject *m;
- 	PyObject *d;
 
 	m = Py_InitModule4("gc",
--- 974,977 ----
***************
*** 981,1003 ****
 			 NULL,
 			 PYTHON_API_VERSION);
! 	d = PyModule_GetDict(m);
 	if (garbage == NULL) {
 		garbage = PyList_New(0);
 	}
! 	PyDict_SetItemString(d, "garbage", garbage);
! 	PyDict_SetItemString(d, "DEBUG_STATS",
! 			PyInt_FromLong(DEBUG_STATS));
! 	PyDict_SetItemString(d, "DEBUG_COLLECTABLE",
! 			PyInt_FromLong(DEBUG_COLLECTABLE));
! 	PyDict_SetItemString(d, "DEBUG_UNCOLLECTABLE",
! 			PyInt_FromLong(DEBUG_UNCOLLECTABLE));
! 	PyDict_SetItemString(d, "DEBUG_INSTANCES",
! 			PyInt_FromLong(DEBUG_INSTANCES));
! 	PyDict_SetItemString(d, "DEBUG_OBJECTS",
! 			PyInt_FromLong(DEBUG_OBJECTS));
! 	PyDict_SetItemString(d, "DEBUG_SAVEALL",
! 			PyInt_FromLong(DEBUG_SAVEALL));
! 	PyDict_SetItemString(d, "DEBUG_LEAK",
! 			PyInt_FromLong(DEBUG_LEAK));
 }
 
--- 980,1000 ----
 			 NULL,
 			 PYTHON_API_VERSION);
! 
 	if (garbage == NULL) {
 		garbage = PyList_New(0);
+ 		if (garbage == NULL)
+ 			return;
 	}
! 	if (PyModule_AddObject(m, "garbage", garbage) < 0)
! 		return;
! #define ADD_INT(NAME) if (PyModule_AddIntConstant(m, #NAME, NAME) < 0) return
! 	ADD_INT(DEBUG_STATS);
! 	ADD_INT(DEBUG_COLLECTABLE);
! 	ADD_INT(DEBUG_UNCOLLECTABLE);
! 	ADD_INT(DEBUG_INSTANCES);
! 	ADD_INT(DEBUG_OBJECTS);
! 	ADD_INT(DEBUG_SAVEALL);
! 	ADD_INT(DEBUG_LEAK);
! #undef ADD_INT
 }
 

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