X-Git-Url: https://sigrok.org/gitweb/?p=sigrok-cli.git;a=blobdiff_plain;f=sigrok-cli.c;h=2f6c59d80b26bb1eb016ea05fd27426f70943320;hp=c42bf899c1ce79f2325233718e6018ec6118e859;hb=198f4c6c8d8e572aed41dfc3f7d3fe413e421770;hpb=497f5362fe63dc5674ab7146384c9efab35d9e5e diff --git a/sigrok-cli.c b/sigrok-cli.c index c42bf89..2f6c59d 100644 --- a/sigrok-cli.c +++ b/sigrok-cli.c @@ -256,16 +256,16 @@ static void print_dev_line(const struct sr_dev_inst *sdi) if (sdi->probes) { if (g_slist_length(sdi->probes) == 1) { probe = sdi->probes->data; - printf("with 1 probe: %s\n", probe->name); + printf("with 1 probe: %s", probe->name); } else { - printf("with %d probes:\n", g_slist_length(sdi->probes)); + printf("with %d probes:", g_slist_length(sdi->probes)); for (l = sdi->probes; l; l = l->next) { probe = l->data; - printf(" %s\n", probe->name); + printf(" %s", probe->name); } } - } else - printf("\n"); + } + printf("\n"); } static void show_dev_list(void) @@ -1475,6 +1475,7 @@ static void logger(const gchar *log_domain, GLogLevelFlags log_level, int main(int argc, char **argv) { + int ret = 1; GOptionContext *context; GError *error; @@ -1486,36 +1487,36 @@ int main(int argc, char **argv) if (!g_option_context_parse(context, &argc, &argv, &error)) { g_critical("%s", error->message); - return 1; + goto done_noexit; } /* Set the loglevel (amount of messages to output) for libsigrok. */ if (sr_log_loglevel_set(opt_loglevel) != SR_OK) - return 1; + goto done_noexit; /* Set the loglevel (amount of messages to output) for libsigrokdecode. */ if (srd_log_loglevel_set(opt_loglevel) != SRD_OK) - return 1; + goto done_noexit; if (sr_init() != SR_OK) - return 1; + goto done_noexit; if (opt_pds) { if (srd_init(NULL) != SRD_OK) - return 1; + goto done; if (register_pds(NULL, opt_pds) != 0) - return 1; + goto done; if (srd_pd_output_callback_add(SRD_OUTPUT_ANN, show_pd_annotations, NULL) != SRD_OK) - return 1; + goto done; if (setup_pd_stack() != 0) - return 1; + goto done; if (setup_pd_annotations() != 0) - return 1; + goto done; } if (setup_output_format() != 0) - return 1; + goto done; if (opt_version) show_version(); @@ -1535,8 +1536,13 @@ int main(int argc, char **argv) if (opt_pds) srd_exit(); - g_option_context_free(context); + ret = 0; + +done: sr_exit(); - return 0; +done_noexit: + g_option_context_free(context); + + return ret; }