X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Fdemo%2Fdemo.c;h=68bd4115b5fd60cf60126626d07df1a4f9c7a8b8;hb=6383365795b8f9a3408315f8726fa75fa25e19d1;hp=69f48f12d1c6e5a10eee4d4adcb353462de61c7d;hpb=3b412e3a305cf06ac9bbb91ca5025d1712617b71;p=libsigrok.git diff --git a/hardware/demo/demo.c b/hardware/demo/demo.c index 69f48f12..68bd4115 100644 --- a/hardware/demo/demo.c +++ b/hardware/demo/demo.c @@ -145,9 +145,7 @@ static int dev_acquisition_stop(struct sr_dev_inst *sdi, void *cb_data); static int dev_clear(void) { - /* Nothing needed so far. */ - - return SR_OK; + return std_dev_clear(di, NULL); } static int init(struct sr_context *sr_ctx) @@ -224,28 +222,7 @@ static int dev_close(struct sr_dev_inst *sdi) static int cleanup(void) { - GSList *l; - struct sr_dev_inst *sdi; - struct drv_context *drvc; - int ret = SR_OK; - - if (!(drvc = di->priv)) - return SR_OK; - - /* Properly close and free all devices. */ - for (l = drvc->instances; l; l = l->next) { - if (!(sdi = l->data)) { - /* Log error, but continue cleaning up the rest. */ - sr_err("%s: sdi was NULL, continuing", __func__); - ret = SR_ERR_BUG; - continue; - } - sr_dev_inst_free(sdi); - } - g_slist_free(drvc->instances); - drvc->instances = NULL; - - return ret; + return dev_clear(); } static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi)