Commit 556b43d9 authored by Raymond Hettinger's avatar Raymond Hettinger

Restore BEGIN/END THREADS macros which were squashed in the previous checkin

parent 44f326ef
......@@ -631,7 +631,7 @@ PyDoc_STRVAR(reduce_doc, "Return state information for pickling.");
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 @@ deque_repr(PyObject *deque)
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 @@ deque_tp_print(PyObject *deque, FILE *fp, int flags)
if (i != 0) {
if (i < 0)
return i;
Py_BEGIN_ALLOW_THREADS
fputs("[...]", fp);
Py_END_ALLOW_THREADS
return 0;
}
......@@ -683,9 +685,13 @@ deque_tp_print(PyObject *deque, FILE *fp, int flags)
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 @@ deque_tp_print(PyObject *deque, FILE *fp, int flags)
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 @@ static int
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;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment