if (ctx->channels[j].ch->type == SR_CHANNEL_LOGIC) {
for (i = 0; i < num_samples; i++) {
sample = logic->data + i * logic->unitsize;
- idx = ctx->channels[ch].ch->index;
+ idx = ctx->channels[j].ch->index;
if (ctx->label_do && !ctx->label_names)
ctx->channels[j].label = "logic";
ctx->logic_samples[i * ctx->num_logic_channels + ch] = sample[idx / 8] & (1 << (idx % 8));
g_free((gpointer)ctx->frame);
g_free((gpointer)ctx->comment);
g_free((gpointer)ctx->gnuplot);
+ g_free((gpointer)ctx->value);
g_free(ctx->previous_sample);
g_free(ctx->channels);
g_free(o->priv);