]> sigrok.org Git - sigrok-cli.git/blobdiff - session.c
decode: improve readability, use intermediate variables
[sigrok-cli.git] / session.c
index 5d92362e714bf87175b616495a3f3a3e5c844e78..152f9790b818bcffc94a1e81b1796852abbe8ce4 100644 (file)
--- a/session.c
+++ b/session.c
@@ -130,9 +130,6 @@ const struct sr_transform *setup_transform_module(const struct sr_dev_inst *sdi)
        GHashTable *fmtargs, *fmtopts;
        char *fmtspec;
 
-       if (!opt_transform_module)
-               opt_transform_module = "nop";
-
        fmtargs = parse_generic_arg(opt_transform_module, TRUE);
        fmtspec = g_hash_table_lookup(fmtargs, "sigrok_key");
        if (!fmtspec)
@@ -580,12 +577,18 @@ void run_session(void)
                }
        }
 
+       /* This is unlikely to happen but it makes static analyzers stop complaining. */
+       if (!devices) {
+               g_critical("No real devices found.");
+               return;
+       }
+
        sdi = devices->data;
        g_slist_free(devices);
        g_slist_free(real_devices);
 
        sr_session_new(sr_ctx, &session);
-       sr_session_datafeed_callback_add(session, datafeed_in, NULL);
+       sr_session_datafeed_callback_add(session, datafeed_in, session);
 
        if (sr_dev_open(sdi) != SR_OK) {
                g_critical("Failed to open device.");
@@ -672,7 +675,7 @@ void run_session(void)
 
        if (opt_frames) {
                if ((sr_parse_sizestring(opt_frames, &limit_frames) != SR_OK)) {
-                       g_critical("Invalid sample limit '%s'.", opt_samples);
+                       g_critical("Invalid frame limit '%s'.", opt_frames);
                        sr_session_destroy(session);
                        return;
                }
@@ -684,8 +687,10 @@ void run_session(void)
                }
        }
 
-       if (!(t = setup_transform_module(sdi)))
-               g_critical("Failed to initialize transform module.");
+       if (opt_transform_module) {
+               if (!(t = setup_transform_module(sdi)))
+                       g_critical("Failed to initialize transform module.");
+       }
 
        main_loop = g_main_loop_new(NULL, FALSE);