X-Git-Url: https://sigrok.org/gitweb/?p=libsigrokdecode.git;a=blobdiff_plain;f=controller.c;h=882cafbe272f25e0bee3fce5d2eb6693407b3a8c;hp=db2ed9b4e5091202dff16696962380a0929efc45;hb=a62186e44c606a8d4cb45b3d8c3cc9fa6a5038ea;hpb=b2c19614a6c4eaa0170971d1261a1bb25212e277 diff --git a/controller.c b/controller.c index db2ed9b..882cafb 100644 --- a/controller.c +++ b/controller.c @@ -86,34 +86,11 @@ typedef struct { static PyTypeObject sigrok_Decoder_type = { PyObject_HEAD_INIT(NULL) - 0, - "sigrok.Decoder", - sizeof(sigrok_Decoder_object), - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, - "Sigrok Decoder object", - 0, - 0, - 0, - 0, - 0, - 0, - Decoder_methods, + .tp_name = "sigrok.Decoder", + .tp_basicsize = sizeof(sigrok_Decoder_object), + .tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, + .tp_doc = "Sigrok Decoder object", + .tp_methods = Decoder_methods, }; PyMODINIT_FUNC init_sigrok_Decoder(void) @@ -293,10 +270,11 @@ int srd_session_start(const char *driver, int unitsize, uint64_t starttime, for (d = decoders; d; d = d->next) { di = d->data; if (!(py_res = PyObject_CallMethod(di->py_instance, "start", - "{s:s,s:i,s:d}", - "driver", driver, - "unitsize", unitsize, - "starttime", starttime))) { + "{s:s,s:l,s:l,s:l}", + "driver", driver, + "unitsize", (long)unitsize, + "starttime", (long)starttime, + "samplerate", (long)samplerate))) { if (PyErr_Occurred()) PyErr_Print(); /* Returns void. */ @@ -333,11 +311,11 @@ int srd_run_decoder(struct srd_decoder_instance *dec, /* Return an error upon unusable input. */ if (dec == NULL) - return SRD_ERR_ARGS; /* TODO: More specific error? */ + return SRD_ERR_ARG; /* TODO: More specific error? */ if (inbuf == NULL) - return SRD_ERR_ARGS; /* TODO: More specific error? */ + return SRD_ERR_ARG; /* TODO: More specific error? */ if (inbuflen == 0) /* No point in working on empty buffers. */ - return SRD_ERR_ARGS; /* TODO: More specific error? */ + return SRD_ERR_ARG; /* TODO: More specific error? */ /* TODO: Error handling. */ py_instance = dec->py_instance;