sandbox: Disintangle declarations in do_host_bind()
authorSimon Glass <sjg@chromium.org>
Mon, 15 Mar 2021 05:11:09 +0000 (18:11 +1300)
committerSimon Glass <sjg@chromium.org>
Sat, 27 Mar 2021 02:04:31 +0000 (15:04 +1300)
This function has a strange mix of declarations and argument parsing
which is a bit hard to follow and harder to modify. Separate out the
declarations at the start of the function and adjust the ordering of
the code slightly.

Signed-off-by: Simon Glass <sjg@chromium.org>
cmd/host.c

index 1d21f79..927c23d 100644 (file)
@@ -41,16 +41,21 @@ static int do_host_save(struct cmd_tbl *cmdtp, int flag, int argc,
 static int do_host_bind(struct cmd_tbl *cmdtp, int flag, int argc,
                        char *const argv[])
 {
+       const char *dev_str;
+       char *file;
+       char *ep;
+       int dev;
+
        if (argc < 2 || argc > 3)
                return CMD_RET_USAGE;
-       char *ep;
-       char *dev_str = argv[1];
-       char *file = argc >= 3 ? argv[2] : NULL;
-       int dev = simple_strtoul(dev_str, &ep, 16);
+       dev_str = argv[1];
+       dev = simple_strtoul(dev_str, &ep, 16);
        if (*ep) {
                printf("** Bad device specification %s **\n", dev_str);
                return CMD_RET_USAGE;
        }
+       file = argc >= 3 ? argv[2] : NULL;
+
        return !!host_dev_bind(dev, file);
 }