From 7b3d54a1278dc89f5ad43a5c00bfacbbddc8a9b6 Mon Sep 17 00:00:00 2001
From: Zachary T Welch <zw@superlucidity.net>
Date: Fri, 23 Oct 2009 02:17:17 -0700
Subject: [PATCH] Improve avrf.c command argument parsing.

---
 src/flash/avrf.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/src/flash/avrf.c b/src/flash/avrf.c
index 533822e92..2b95b8a18 100644
--- a/src/flash/avrf.c
+++ b/src/flash/avrf.c
@@ -456,7 +456,6 @@ static int avrf_mass_erase(struct flash_bank_s *bank)
 
 static int avrf_handle_mass_erase_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
 {
-	flash_bank_t *bank;
 	int i;
 
 	if (argc < 1)
@@ -465,12 +464,10 @@ static int avrf_handle_mass_erase_command(struct command_context_s *cmd_ctx, cha
 		return ERROR_OK;
 	}
 
-	bank = get_flash_bank_by_num(strtoul(args[0], NULL, 0));
-	if (!bank)
-	{
-		command_print(cmd_ctx, "flash bank '#%s' is out of bounds", args[0]);
-		return ERROR_OK;
-	}
+	flash_bank_t *bank;
+	int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+	if (ERROR_OK != retval)
+		return retval;
 
 	if (avrf_mass_erase(bank) == ERROR_OK)
 	{
-- 
GitLab