diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2020-12-11 13:31:14 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2020-12-11 13:31:14 +0100 |
commit | b33e3e0f99946260200a43e783488416eeed112a (patch) | |
tree | 9f48d7f56344d98b0e6abc7b34c0fda0e19cb5be /commands | |
parent | 2d525e7ee0a8059881e725db7d3f1d8ebb5e63f5 (diff) | |
parent | 8bc9efc85b8af8a23a0c86b04e2265730a220ade (diff) | |
download | barebox-b33e3e0f99946260200a43e783488416eeed112a.tar.gz barebox-b33e3e0f99946260200a43e783488416eeed112a.tar.xz |
Merge branch 'for-next/misc'
Diffstat (limited to 'commands')
-rw-r--r-- | commands/boot.c | 13 | ||||
-rw-r--r-- | commands/export.c | 4 | ||||
-rw-r--r-- | commands/global.c | 6 | ||||
-rw-r--r-- | commands/memtester/memtester.c | 2 | ||||
-rw-r--r-- | commands/nv.c | 7 | ||||
-rw-r--r-- | commands/readlink.c | 2 | ||||
-rw-r--r-- | commands/setenv.c | 18 |
7 files changed, 21 insertions, 31 deletions
diff --git a/commands/boot.c b/commands/boot.c index d7795bde72..18f4e36ec7 100644 --- a/commands/boot.c +++ b/commands/boot.c @@ -97,19 +97,16 @@ static int do_boot(int argc, char *argv[]) if (list_empty(&entries->entries)) { printf("Nothing bootable found\n"); - return COMMAND_ERROR; - } - - if (do_list) { - bootsources_list(entries); + ret = COMMAND_ERROR; goto out; } - if (do_menu) { + if (do_list) + bootsources_list(entries); + else if (do_menu) bootsources_menu(entries, timeout); - goto out; - } + ret = 0; out: bootentries_free(entries); free(freep); diff --git a/commands/export.c b/commands/export.c index 8972b7d528..c69f1595c6 100644 --- a/commands/export.c +++ b/commands/export.c @@ -20,10 +20,8 @@ static int do_export(int argc, char *argv[]) return COMMAND_ERROR_USAGE; while (i < argc) { - if ((ptr = strchr(argv[i], '='))) { - *ptr++ = 0; + if ((ptr = parse_assignment(argv[i]))) setenv(argv[i], ptr); - } if (export(argv[i])) { printf("could not export: %s\n", argv[i]); return 1; diff --git a/commands/global.c b/commands/global.c index 15b6a9f3d3..cf8e9a5b48 100644 --- a/commands/global.c +++ b/commands/global.c @@ -37,11 +37,7 @@ static int do_global(int argc, char *argv[]) return COMMAND_ERROR_USAGE; for (i = 0; i < argc; i++) { - value = strchr(argv[i], '='); - if (value) { - *value = 0; - value++; - } + value = parse_assignment(argv[i]); if (do_remove) globalvar_remove(argv[i]); diff --git a/commands/memtester/memtester.c b/commands/memtester/memtester.c index 8b64d32329..130dc97c83 100644 --- a/commands/memtester/memtester.c +++ b/commands/memtester/memtester.c @@ -139,7 +139,7 @@ static int do_memtester(int argc, char **argv) { wantbytes = (size_t) strtoull_suffix(argv[optind], 0, 0); if (wantbytes < 2 * sizeof(ul)) { - printf("need at least %ldB of memory to test\n", 2 * sizeof(ul)); + printf("need at least %zuB of memory to test\n", 2 * sizeof(ul)); return COMMAND_ERROR_USAGE; } wantmb = (wantbytes >> 20); diff --git a/commands/nv.c b/commands/nv.c index 8d4192402c..c60bb41677 100644 --- a/commands/nv.c +++ b/commands/nv.c @@ -55,11 +55,8 @@ static int do_nv(int argc, char *argv[]) for (i = 0; i < argc; i++) { int ret; - value = strchr(argv[0], '='); - if (value) { - *value = 0; - value++; - } + + value = parse_assignment(argv[i]) ?: ""; if (do_remove) { ret = nvvar_remove(argv[i]); diff --git a/commands/readlink.c b/commands/readlink.c index fdcf175f56..81ad25c733 100644 --- a/commands/readlink.c +++ b/commands/readlink.c @@ -50,7 +50,7 @@ static int do_readlink(int argc, char *argv[]) return 0; err: - setenv(argv[optind + 1], ""); + unsetenv(argv[optind + 1]); return 1; } diff --git a/commands/setenv.c b/commands/setenv.c index ad26770655..99604c35c3 100644 --- a/commands/setenv.c +++ b/commands/setenv.c @@ -9,20 +9,22 @@ static int do_setenv(int argc, char *argv[]) { - char *equal; + char *val; + int ret; if (argc < 2) return COMMAND_ERROR_USAGE; - equal = strrchr(argv[1], '='); - if (equal) { - equal[0] = '\0'; - if (equal[1]) - argv[2] = &equal[1]; - } + val = parse_assignment(argv[1]); + if (val) + argv[2] = val; + if (argv[2]) + ret = setenv(argv[1], argv[2]); + else + ret = unsetenv(argv[1]); - return setenv(argv[1], argv[2]) ? COMMAND_ERROR : COMMAND_SUCCESS; + return ret ? COMMAND_ERROR : COMMAND_SUCCESS; } BAREBOX_CMD_HELP_START(setenv) |