summaryrefslogtreecommitdiffstats
path: root/commands/flash.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2007-10-09 17:16:08 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2007-10-09 17:16:08 +0200
commitbd1910d500de165506acbb8359a79e072344d219 (patch)
treebf40df9cfdaefd6971450c2e892181606ccd1b97 /commands/flash.c
parent41c7912446cb1bdb442b14bb2f09dcbff5beab61 (diff)
downloadbarebox-bd1910d500de165506acbb8359a79e072344d219.tar.gz
barebox-bd1910d500de165506acbb8359a79e072344d219.tar.xz
fix area parsing for erase/protect, add error parsing
Diffstat (limited to 'commands/flash.c')
-rw-r--r--commands/flash.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/commands/flash.c b/commands/flash.c
index 82cce0fdca..7d7876d862 100644
--- a/commands/flash.c
+++ b/commands/flash.c
@@ -65,8 +65,11 @@ static int do_flerase (cmd_tbl_t *cmdtp, int argc, char *argv[])
return 1;
}
- if (argc == 2)
- parse_area_spec(argv[optind], &start, &size);
+ if (argc == 3)
+ if (parse_area_spec(argv[2], &start, &size)) {
+ printf("could not parse: %s\n", argv[optind]);
+ return 1;
+ }
if(erase(fd, size, start)) {
perror("erase");
@@ -127,7 +130,10 @@ static int do_protect (cmd_tbl_t *cmdtp, int argc, char *argv[])
}
if (argc == 3)
- parse_area_spec(argv[optind], &start, &size);
+ if (parse_area_spec(argv[2], &start, &size)) {
+ printf("could not parse: %s\n", argv[optind]);
+ return 1;
+ }
if(protect(fd, size, start, prot)) {
perror("protect");