[Python-checkins] r58338 - python/trunk/Modules/_collectionsmodule.c

raymond.hettinger python-checkins at python.org
Fri Oct 5 21:07:31 CEST 2007


Author: raymond.hettinger
Date: Fri Oct  5 21:07:31 2007
New Revision: 58338

Modified:
   python/trunk/Modules/_collectionsmodule.c
Log:
Restore BEGIN/END THREADS macros which were squashed in the previous checkin

Modified: python/trunk/Modules/_collectionsmodule.c
==============================================================================
--- python/trunk/Modules/_collectionsmodule.c	(original)
+++ python/trunk/Modules/_collectionsmodule.c	Fri Oct  5 21:07:31 2007
@@ -631,7 +631,7 @@
 static PyObject *
 deque_repr(PyObject *deque)
 {
-	PyObject *aslist, *result, *fmt;  /*, *limit; */
+	PyObject *aslist, *result, *fmt;
 	int i;
 
 	i = Py_ReprEnter(deque);
@@ -656,7 +656,7 @@
 		Py_ReprLeave(deque);
 		return NULL;
 	}
-        result = PyString_Format(fmt, aslist);
+	result = PyString_Format(fmt, aslist);
 	Py_DECREF(fmt);
 	Py_DECREF(aslist);
 	Py_ReprLeave(deque);
@@ -675,7 +675,9 @@
 	if (i != 0) {
 		if (i < 0)
 			return i;
+		Py_BEGIN_ALLOW_THREADS
 		fputs("[...]", fp);
+		Py_END_ALLOW_THREADS
 		return 0;
 	}
 
@@ -683,9 +685,13 @@
 	if (it == NULL)
 		return -1;
 
+	Py_BEGIN_ALLOW_THREADS
 	fputs("deque([", fp);
+	Py_END_ALLOW_THREADS
 	while ((item = PyIter_Next(it)) != NULL) {
+		Py_BEGIN_ALLOW_THREADS
 		fputs(emit, fp);
+		Py_END_ALLOW_THREADS
 		emit = separator;
 		if (PyObject_Print(item, fp, 0) != 0) {
 			Py_DECREF(item);
@@ -700,10 +706,12 @@
 	if (PyErr_Occurred())
 		return -1;
 
+	Py_BEGIN_ALLOW_THREADS
 	if (((dequeobject *)deque)->maxlen == -1)
 		fputs("])", fp);
 	else
-		fprintf(fp, "], maxlen=%d)", ((dequeobject *)deque)->maxlen);        
+		fprintf(fp, "], maxlen=%d)", ((dequeobject *)deque)->maxlen);
+	Py_END_ALLOW_THREADS
 	return 0;
 }
 
@@ -1223,15 +1231,23 @@
 defdict_print(defdictobject *dd, FILE *fp, int flags)
 {
 	int sts;
+	Py_BEGIN_ALLOW_THREADS
 	fprintf(fp, "defaultdict(");
-	if (dd->default_factory == NULL)
+	Py_END_ALLOW_THREADS
+	if (dd->default_factory == NULL) {
+		Py_BEGIN_ALLOW_THREADS
 		fprintf(fp, "None");
-	else {
+		Py_END_ALLOW_THREADS
+	} else {
 		PyObject_Print(dd->default_factory, fp, 0);
 	}
+	Py_BEGIN_ALLOW_THREADS
 	fprintf(fp, ", ");
+	Py_END_ALLOW_THREADS
 	sts = PyDict_Type.tp_print((PyObject *)dd, fp, 0);
+	Py_BEGIN_ALLOW_THREADS
 	fprintf(fp, ")");
+	Py_END_ALLOW_THREADS
 	return sts;
 }
 


More information about the Python-checkins mailing list