X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=output%2Fgnuplot.c;h=cadd4fa3b8c2f4f46fdc742674e348561d975efa;hb=0bc3ab92e66ee08486e25a9a95b1300e2654fd28;hp=29508cefdc62ae20c59e25217ccb2be33570d190;hpb=3544f848e0d7f67af8e11ce7ec344b34cd797df3;p=libsigrok.git diff --git a/output/gnuplot.c b/output/gnuplot.c index 29508cef..cadd4fa3 100644 --- a/output/gnuplot.c +++ b/output/gnuplot.c @@ -80,9 +80,17 @@ static int init(struct sr_output *o) ctx->num_enabled_probes = 0; for (l = o->sdi->probes; l; l = l->next) { probe = l->data; - if (probe->enabled) - ctx->num_enabled_probes++; + if (probe->type != SR_PROBE_LOGIC) + continue; + if (!probe->enabled) + continue; + ctx->num_enabled_probes++; } + if (ctx->num_enabled_probes <= 0) { + sr_err("%s: no logic probe enabled", __func__); + return SR_ERR; + } + ctx->unitsize = (ctx->num_enabled_probes + 7) / 8; num_probes = g_slist_length(o->sdi->probes); @@ -106,6 +114,8 @@ static int init(struct sr_output *o) wbuf[0] = '\0'; for (i = 0, l = o->sdi->probes; l; l = l->next, i++) { probe = l->data; + if (probe->type != SR_PROBE_LOGIC) + continue; if (!probe->enabled) continue; c = (char *)&wbuf + strlen((const char *)&wbuf);