X-Git-Url: https://sigrok.org/gitweb/?p=libsigrokdecode.git;a=blobdiff_plain;f=module_sigrokdecode.c;h=39b5b4392e479a5dfde3fa2985002b50f0e2384c;hp=a0d9610f97f2f415d8956bc2f51fd6fe578a2939;hb=d62ee705a0807493781bf1e314c73399bb8d72c5;hpb=eb88372396c2264948bc05586fb54dc318266973 diff --git a/module_sigrokdecode.c b/module_sigrokdecode.c index a0d9610..39b5b43 100644 --- a/module_sigrokdecode.c +++ b/module_sigrokdecode.c @@ -42,6 +42,9 @@ static struct PyModuleDef sigrokdecode_module = { PyMODINIT_FUNC PyInit_sigrokdecode(void) { PyObject *mod, *Decoder_type; + PyGILState_STATE gstate; + + gstate = PyGILState_Ensure(); mod = PyModule_Create(&sigrokdecode_module); if (!mod) @@ -68,11 +71,16 @@ PyMODINIT_FUNC PyInit_sigrokdecode(void) mod_sigrokdecode = mod; + PyGILState_Release(gstate); + return mod; + err_out: Py_XDECREF(mod); srd_exception_catch("Failed to initialize module"); + PyGILState_Release(gstate); return NULL; } + /** @endcond */