[PATCH v2] edit: Return error when save_file failed

Enrico Jorns ejo at pengutronix.de
Wed Nov 4 03:03:24 PST 2015


When writing a file failed (e.g. due to a read-only file system), no
error was reported by the 'edit' tool. To be valid (and to not confuse
the poor user) at least '1' should be returned to indicate an error.

Signed-off-by: Enrico Jorns <ejo at pengutronix.de>
---
 commands/edit.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/commands/edit.c b/commands/edit.c
index b28e2b9..3b653b7 100644
--- a/commands/edit.c
+++ b/commands/edit.c
@@ -375,6 +375,7 @@ static int do_edit(int argc, char *argv[])
 	int i;
 	int linepos;
 	int c;
+	int ret = 0;
 
 	if (argc != 2)
 		return COMMAND_ERROR_USAGE;
@@ -533,7 +534,7 @@ static int do_edit(int argc, char *argv[])
 			}
 			break;
 		case 4:
-			save_file(argv[1]);
+			ret = save_file(argv[1]);
 			goto out;
 		case 3:
 			goto out;
@@ -546,7 +547,7 @@ out:
 	free_buffer();
 	printf("%c[2J%c[r", 27, 27);
 	printf("\n");
-	return 0;
+	return ret;
 }
 
 static const char *edit_aliases[] = { "sedit", NULL};
-- 
2.6.1




More information about the barebox mailing list