瀏覽代碼

cmd: nvedit: set H_INTERACTIVE in do_env_default

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@compulab.co.il>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Yaniv Levinsky 6 年之前
父節點
當前提交
5a04264ecf
共有 2 個文件被更改,包括 2 次插入2 次删除
  1. 1 1
      cmd/nvedit.c
  2. 1 1
      env/common.c

+ 1 - 1
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 == '-') {

+ 1 - 1
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);