g_slist_free_full(dec->outputs, g_free);
g_slist_free_full(dec->inputs, g_free);
+ g_slist_free_full(dec->tags, g_free);
g_free(dec->license);
g_free(dec->desc);
g_free(dec->longname);
/* Check Decoder class for required methods. */
+ if (check_method(d->py_dec, module_name, "reset") != SRD_OK) {
+ fail_txt = "no 'reset()' method";
+ goto err_out;
+ }
+
if (check_method(d->py_dec, module_name, "start") != SRD_OK) {
fail_txt = "no 'start()' method";
goto err_out;
goto err_out;
}
+ if (py_attr_as_strlist(d->py_dec, "tags", &(d->tags)) != SRD_OK) {
+ fail_txt = "missing or malformed 'tags' attribute";
+ goto err_out;
+ }
+
/* All options and their default values. */
if (get_options(d) != SRD_OK) {
fail_txt = "cannot get options";