forked from Ivasoft/DSView
Moved PyGILState_Ensure in srd_decoder_inst to before PyTuple_New is called. Fixes segmentation fault
This commit is contained in:
@@ -370,6 +370,8 @@ SRD_API struct srd_decoder_inst *srd_inst_new(struct srd_session *sess,
|
||||
}
|
||||
}
|
||||
|
||||
gstate = PyGILState_Ensure();
|
||||
|
||||
/*
|
||||
* Prepare a default channel map, where samples come in the
|
||||
* order in which the decoder class defined them.
|
||||
@@ -389,8 +391,6 @@ SRD_API struct srd_decoder_inst *srd_inst_new(struct srd_session *sess,
|
||||
/* Default to the initial pins being the same as in sample 0. */
|
||||
oldpins_array_seed(di);
|
||||
|
||||
gstate = PyGILState_Ensure();
|
||||
|
||||
/* Create a new instance of this decoder class. */
|
||||
if (!(di->py_inst = PyObject_CallObject(dec->py_dec, NULL))) {
|
||||
if (PyErr_Occurred())
|
||||
|
||||
Reference in New Issue
Block a user