X-Git-Url: https://sigrok.org/gitweb/?p=libsigrokdecode.git;a=blobdiff_plain;f=module_sigrokdecode.c;h=ab5df19e3db27cde47cf1cc943a83ccbd4d51aa6;hp=a0d9610f97f2f415d8956bc2f51fd6fe578a2939;hb=25d3576134e7b57ca169e8e4ebd4e4ce5dcf62dd;hpb=eb88372396c2264948bc05586fb54dc318266973 diff --git a/module_sigrokdecode.c b/module_sigrokdecode.c index a0d9610..ab5df19 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,10 +71,13 @@ 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; }