[U-Boot] [PATCH 3/4] cmd: nvedit: set H_INTERACTIVE in do_env_default

Yaniv Levinsky yaniv.levinsky at compulab.co.il
Sun Jun 24 16:16:56 UTC 2018


The function set_default_vars() in common.c adds H_INTERACTIVE to the
h_import() flag, but the function has no way of telling if the command
actually was user directed like this flag suggest. The flag should be
set by the calling function do_env_default() in nvedit.c instead, where
the command is certainty user directed.

Move the H_INTERACTIVE flag from set_default_vars() to do_env_default().

Signed-off-by: Yaniv Levinsky <yaniv.levinsky at compulab.co.il>
Acked-by: Igor Grinberg <grinberg at compulab.co.il>
---
 cmd/nvedit.c | 2 +-
 env/common.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/cmd/nvedit.c b/cmd/nvedit.c
index 1955dee0d0..8b73c606ca 100644
--- a/cmd/nvedit.c
+++ b/cmd/nvedit.c
@@ -780,7 +780,7 @@ int envmatch(uchar *s1, int i2)
 static int do_env_default(cmd_tbl_t *cmdtp, int flag,
 			  int argc, char * const argv[])
 {
-	int all = 0, env_flag = 0;
+	int all = 0, env_flag = H_INTERACTIVE;
 
 	debug("Initial value for argc=%d\n", argc);
 	while (--argc > 0 && **++argv == '-') {
diff --git a/env/common.c b/env/common.c
index 6cf5eddaf6..05183a4af0 100644
--- a/env/common.c
+++ b/env/common.c
@@ -97,7 +97,7 @@ int set_default_vars(int nvars, char * const vars[], int flags)
 	 * Special use-case: import from default environment
 	 * (and use \0 as a separator)
 	 */
-	flags |= H_NOCLEAR | H_INTERACTIVE;
+	flags |= H_NOCLEAR;
 	return himport_r(&env_htab, (const char *)default_environment,
 				sizeof(default_environment), '\0',
 				flags, 0, nvars, vars);
-- 
2.17.1



More information about the U-Boot mailing list