From: Pierre Aubert Date: Tue, 8 Oct 2013 12:20:27 +0000 (+0200) Subject: env: fix the env export varname X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=9a8323311ca500579b86905fcf539f17c193ce25;p=u-boot.git env: fix the env export varname The env export command doesn't export the first variable of the list since commit 5a31ea04c9ee5544fbb70ad7597ea4b294840eab "env grep" - reimplement command using hexport_r() Signed-off-by: Pierre Aubert --- diff --git a/common/cmd_nvedit.c b/common/cmd_nvedit.c index 0d4d02cfe0..5bcc324675 100644 --- a/common/cmd_nvedit.c +++ b/common/cmd_nvedit.c @@ -157,10 +157,8 @@ static int do_env_grep(cmd_tbl_t *cmdtp, int flag, grep_how = H_MATCH_SUBSTR; /* default: substring search */ grep_what = H_MATCH_BOTH; /* default: grep names and values */ - while (argc > 1 && **(argv + 1) == '-') { - char *arg = *++argv; - - --argc; + while (--argc > 0 && **++argv == '-') { + char *arg = *argv; while (*++arg) { switch (*arg) { #ifdef CONFIG_REGEX diff --git a/lib/hashtable.c b/lib/hashtable.c index c5a2b08bec..4356b234ec 100644 --- a/lib/hashtable.c +++ b/lib/hashtable.c @@ -564,7 +564,7 @@ static int match_entry(ENTRY *ep, int flag, int arg; void *priv = NULL; - for (arg = 1; arg < argc; ++arg) { + for (arg = 0; arg < argc; ++arg) { #ifdef CONFIG_REGEX struct slre slre;