X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Foutput%2Fanalog.c;h=d665b8ec2edaa81182adc50387b0538d6dc70dfe;hb=588295b8b9cd9b3c7e67ccd3bfd74e05c513c0fb;hp=5c624e050033729273b0972fb4c6c580cecd80c8;hpb=e86cc12b66a4d1e24224cd5a766c4426d17fa56a;p=libsigrok.git diff --git a/src/output/analog.c b/src/output/analog.c index 5c624e05..d665b8ec 100644 --- a/src/output/analog.c +++ b/src/output/analog.c @@ -195,8 +195,14 @@ static int cleanup(struct sr_output *o) ctx = o->priv; g_ptr_array_free(ctx->channellist, 1); - g_variant_unref(options[0].def); - g_slist_free_full(options[0].values, (GDestroyNotify)g_variant_unref); + if (options[0].def) { + g_variant_unref(options[0].def); + options[0].def = NULL; + } + if (options[0].values) { + g_slist_free_full(options[0].values, (GDestroyNotify)g_variant_unref); + options[0].values = NULL; + } g_free(ctx->fdata); g_free(ctx); o->priv = NULL;