From 205864b2ea133d752d45368582c5d6d3e4cdcb75 Mon Sep 17 00:00:00 2001 From: Ahmad Fatoum Date: Thu, 26 Nov 2020 19:31:52 +0100 Subject: commands: nv: fix set/remove of multiple variables in one go Multiple nonopt arguments seems to have never worked, because the value was always extracted out of the first non-opt argument. After the first iteration, it'll have it's '=' stripped and thus value == NULL for all i > 0. Fix this. Before: $ nv a=1 b=2 c=3 $ echo "[$nv.a $nv.b $nv.c]" [1 ] After: $ nv a=1 b=2 c=3 $ echo "[$nv.a $nv.b $nv.c]" [1 2 3] Fixes: 0c2fccceb625 ("nv: Allow to set/remove multiple variables with one command") Signed-off-by: Ahmad Fatoum Signed-off-by: Sascha Hauer --- commands/nv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/nv.c b/commands/nv.c index 8d4192402c..fa865811dc 100644 --- a/commands/nv.c +++ b/commands/nv.c @@ -55,7 +55,7 @@ static int do_nv(int argc, char *argv[]) for (i = 0; i < argc; i++) { int ret; - value = strchr(argv[0], '='); + value = strchr(argv[i], '='); if (value) { *value = 0; value++; -- cgit v1.2.3