Restore BEGIN/END THREADS macros which were squashed in the previous checkin
diff --git a/Modules/_collectionsmodule.c b/Modules/_collectionsmodule.c
index 78a71bf..cd8ddca 100644
--- a/Modules/_collectionsmodule.c
+++ b/Modules/_collectionsmodule.c
@@ -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;
}