Make sure the _ctypes extension can be compiled when WITH_THREAD is
not defined on Windows, even if that configuration is probably not
supported at all.
diff --git a/Modules/_ctypes/callbacks.c b/Modules/_ctypes/callbacks.c
index 55ba5f0..c091d88 100644
--- a/Modules/_ctypes/callbacks.c
+++ b/Modules/_ctypes/callbacks.c
@@ -348,7 +348,9 @@
static void LoadPython(void)
{
if (!Py_IsInitialized()) {
+#ifdef WITH_THREAD
PyEval_InitThreads();
+#endif
Py_Initialize();
}
}
diff --git a/Modules/_ctypes/callproc.c b/Modules/_ctypes/callproc.c
index 0fe7d10..6342ece 100644
--- a/Modules/_ctypes/callproc.c
+++ b/Modules/_ctypes/callproc.c
@@ -818,7 +818,9 @@
/* We absolutely have to release the GIL during COM method calls,
otherwise we may get a deadlock!
*/
+#ifdef WITH_THREAD
Py_BEGIN_ALLOW_THREADS
+#endif
hr = pIunk->lpVtbl->QueryInterface(pIunk, &IID_ISupportErrorInfo, (void **)&psei);
if (FAILED(hr))
@@ -842,7 +844,9 @@
pei->lpVtbl->Release(pei);
failed:
+#ifdef WITH_THREAD
Py_END_ALLOW_THREADS
+#endif
progid = NULL;
ProgIDFromCLSID(&guid, &progid);