Don't release the interpreter lock around PyParser_ParseFile().
It is needed so that tokenizer.c can use PySys_WriteStderr().
diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index fa54473..2be073b 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -500,10 +500,8 @@
else if (PyString_Check(w))
ps2 = PyString_AsString(w);
}
- Py_BEGIN_ALLOW_THREADS
n = PyParser_ParseFile(fp, filename, &_PyParser_Grammar,
Py_single_input, ps1, ps2, &err);
- Py_END_ALLOW_THREADS
Py_XDECREF(v);
Py_XDECREF(w);
if (n == NULL) {
@@ -942,10 +940,8 @@
{
node *n;
perrdetail err;
- Py_BEGIN_ALLOW_THREADS
n = PyParser_ParseFile(fp, filename, &_PyParser_Grammar, start,
(char *)0, (char *)0, &err);
- Py_END_ALLOW_THREADS
if (n == NULL)
err_input(&err);
return n;