[PATCH] saveenv: Fix saving to specified file

Sascha Hauer s.hauer at pengutronix.de
Thu Oct 23 14:05:34 PDT 2014


Since e805b7d saveenv: provide a zeroed/empty/ignore environment
barebox no longer honors the file argument when the directory
argument is also givin. Fix this.

Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
 commands/saveenv.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/commands/saveenv.c b/commands/saveenv.c
index 9da733e..43f16dc 100644
--- a/commands/saveenv.c
+++ b/commands/saveenv.c
@@ -39,16 +39,16 @@ static int do_saveenv(int argc, char *argv[])
 	}
 
 	/* destination and source are given? */
-	if (argc == optind + 2)
-		dirname = argv[optind + 1];
-	else
+	if (argc - optind < 2)
 		dirname = "/env";
+	else
+		dirname = argv[optind + 1];
 
 	/* destination only given? */
-	if (argc == optind + 1)
-		filename = argv[optind];
-	else
+	if (argc - optind < 1)
 		filename = default_environment_path_get();
+	else
+		filename = argv[optind];
 
 	ret = envfs_save(filename, dirname, envfs_flags);
 
-- 
2.1.1




More information about the barebox mailing list