]> sigrok.org Git - libsigrok.git/blobdiff - output/csv.c
Rename 'struct sr_probe' to 'struct sr_channel' everywhere.
[libsigrok.git] / output / csv.c
index 5ca8c392d3afcb8300a5576294f2d08913548595..ab6217dfe77e6cb400a5819502c70de6e4d94b47 100644 (file)
@@ -50,7 +50,7 @@ struct context {
 static int init(struct sr_output *o)
 {
        struct context *ctx;
-       struct sr_probe *probe;
+       struct sr_channel *probe;
        GSList *l;
        GVariant *gvar;
        int num_probes;
@@ -98,7 +98,7 @@ static int init(struct sr_output *o)
                               ctx->samplerate);
 
        /* Columns / channels */
-       g_string_append_printf(ctx->header, "; Channels (%d/%d): ",
+       g_string_append_printf(ctx->header, "; Channels (%d/%d):",
                               ctx->num_enabled_probes, num_probes);
        for (l = o->sdi->probes; l; l = l->next) {
                probe = l->data;
@@ -106,8 +106,11 @@ static int init(struct sr_output *o)
                        continue;
                if (!probe->enabled)
                        continue;
-               g_string_append_printf(ctx->header, "%s, ", probe->name);
+               g_string_append_printf(ctx->header, " %s,", probe->name);
        }
+       if (o->sdi->probes)
+               /* Drop last separator. */
+               g_string_truncate(ctx->header, ctx->header->len - 1);
        g_string_append_printf(ctx->header, "\n");
 
        return SR_OK;
@@ -150,6 +153,10 @@ static int receive(struct sr_output *o, const struct sr_dev_inst *sdi,
                                g_string_append_c(*out, c ? '1' : '0');
                                g_string_append_c(*out, ctx->separator);
                        }
+                       if (j) {
+                               /* Drop last separator. */
+                               g_string_truncate(*out, (*out)->len - 1);
+                       }
                        g_string_append_printf(*out, "\n");
                }
                break;