Add more checks on the GIL
Issue #10915, #15751, #26558:
* PyGILState_Check() now returns 1 (success) before the creation of the GIL and
after the destruction of the GIL. It allows to use the function early in
Python initialization and late in Python finalization.
* Add a flag to disable PyGILState_Check(). Disable PyGILState_Check() when
Py_NewInterpreter() is called
* Add assert(PyGILState_Check()) to: _Py_dup(), _Py_fstat(), _Py_read()
and _Py_write()
diff --git a/Parser/pgenmain.c b/Parser/pgenmain.c
index 3ca4afe..671a0cb 100644
--- a/Parser/pgenmain.c
+++ b/Parser/pgenmain.c
@@ -37,6 +37,14 @@
exit(sts);
}
+#ifdef WITH_THREAD
+/* Needed by obmalloc.c */
+int PyGILState_Check(void)
+{
+ return 1;
+}
+#endif
+
int
main(int argc, char **argv)
{