Fix compile problem in cmd_flash.c
authorWolfgang Denk <wd@pollux.denx.de>
Fri, 5 Aug 2005 09:10:31 +0000 (11:10 +0200)
committerWolfgang Denk <wd@pollux.denx.de>
Fri, 5 Aug 2005 09:10:31 +0000 (11:10 +0200)
Patch by Teun Grinwis, 05 Aug 2005

common/cmd_flash.c

index 162d1ff6570af1d9cd9a6afe14cc012a16fd6980..39720826dc9d748a837b62b42e6062aefdc35a18 100644 (file)
@@ -116,12 +116,13 @@ abbrev_spec (char *str, flash_info_t ** pinfo, int *psf, int *psl)
 static int
 addr_spec(char *arg1, char *arg2, ulong *addr_first, ulong *addr_last)
 {
+       char len_used = 0; /* indicates if the "start +length" form used */
        char *ep;
+
        *addr_first = simple_strtoul(arg1, &ep, 16);
        if (ep == arg1 || *ep != '\0')
                return -1;
 
-       char len_used = 0; /* indicates if the "start +length" form used */
        if (arg2 && *arg2 == '+'){
                len_used = 1;
                ++arg2;
@@ -132,6 +133,9 @@ addr_spec(char *arg1, char *arg2, ulong *addr_first, ulong *addr_last)
                return -1;
 
        if (len_used){
+               char found = 0;
+               ulong bank;
+
                /*
                 * *addr_last has the length, compute correct *addr_last
                 * XXX watch out for the integer overflow! Right now it is
@@ -146,8 +150,6 @@ addr_spec(char *arg1, char *arg2, ulong *addr_first, ulong *addr_last)
                 */
 
                /* find the end addr of the sector where the *addr_last is */
-               char found = 0;
-               ulong bank;
                for (bank = 0; bank < CFG_MAX_FLASH_BANKS && !found; ++bank){
                        int i;
                        flash_info_t *info = &flash_info[bank];