X-Git-Url: https://sigrok.org/gitweb/?p=libsigrokdecode.git;a=blobdiff_plain;f=type_decoder.c;h=c8ef09e1021b4be12335eac5af61235f445330e2;hp=1de3b0ed12de262c0d00446f13c2cd6c01293ba4;hb=ed41649709abc02362df526cbd725775000e8199;hpb=50bd5d259677faf87bb3408e111d0e833d7ba9b4
diff --git a/type_decoder.c b/type_decoder.c
index 1de3b0e..c8ef09e 100644
--- a/type_decoder.c
+++ b/type_decoder.c
@@ -17,8 +17,8 @@
* along with this program. If not, see .
*/
-#include "sigrokdecode.h" /* First, so we avoid a _POSIX_C_SOURCE warning. */
-#include "sigrokdecode-internal.h"
+#include "libsigrokdecode.h" /* First, so we avoid a _POSIX_C_SOURCE warning. */
+#include "libsigrokdecode-internal.h"
#include "config.h"
#include
@@ -95,7 +95,7 @@ static PyObject *Decoder_put(PyObject *self, PyObject *args)
struct srd_proto_data *pdata;
uint64_t start_sample, end_sample;
int output_id;
- void (*cb)();
+ struct srd_pd_callback *cb;
if (!(di = srd_inst_find_by_obj(NULL, self))) {
/* Shouldn't happen. */
@@ -135,14 +135,14 @@ static PyObject *Decoder_put(PyObject *self, PyObject *args)
switch (pdo->output_type) {
case SRD_OUTPUT_ANN:
/* Annotations are only fed to callbacks. */
- if ((cb = srd_pd_output_callback_find(pdo->output_type))) {
+ if ((cb = srd_pd_output_callback_find(di->sess, pdo->output_type))) {
/* Annotations need converting from PyObject. */
if (convert_pyobj(di, data, &pdata->ann_format,
(char ***)&pdata->data) != SRD_OK) {
/* An error was already logged. */
break;
}
- cb(pdata);
+ cb->cb(pdata, cb->cb_data);
}
break;
case SRD_OUTPUT_PROTO: