summaryrefslogtreecommitdiffstats
path: root/commands/nand.c
diff options
context:
space:
mode:
Diffstat (limited to 'commands/nand.c')
-rw-r--r--commands/nand.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/commands/nand.c b/commands/nand.c
index b065a661c0..c57b3945a8 100644
--- a/commands/nand.c
+++ b/commands/nand.c
@@ -41,7 +41,7 @@ static int do_nand(int argc, char *argv[])
int command = 0;
loff_t badblock = 0;
int fd;
- int ret;
+ int ret = 0;
struct mtd_info_user mtdinfo;
while((opt = getopt(argc, argv, "adb:g:i")) > 0) {
@@ -88,13 +88,18 @@ static int do_nand(int argc, char *argv[])
optind++;
}
+
+ goto out_ret;
}
if (command == NAND_DEL) {
while (optind < argc) {
- dev_remove_bb_dev(basename(argv[optind]));
+ if (dev_remove_bb_dev(basename(argv[optind])))
+ return 1;
optind++;
}
+
+ goto out_ret;
}
fd = open(argv[optind], O_RDWR);
@@ -149,10 +154,10 @@ static int do_nand(int argc, char *argv[])
printf("No bad blocks\n");
}
- ret = 0;
out:
close(fd);
+out_ret:
return ret;
}