st-flash: Honor size, if given
authorUwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>
Thu, 7 Jun 2012 16:03:23 +0000 (18:03 +0200)
committerUwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>
Thu, 7 Jun 2012 16:03:23 +0000 (18:03 +0200)
flash/main.c

index 24287456b41e283abc6624711267532b4de83fd9..4716b66e154813fd236add16036cceea07fb457d 100644 (file)
@@ -154,10 +154,10 @@ int main(int ac, char** av)
   }
   else /* read */
   {
-    if ((o.addr >= sl->flash_base) &&
+    if ((o.addr >= sl->flash_base) && (o.size == 0) &&
        (o.addr < sl->flash_base + sl->flash_size))
         o.size = sl->flash_size;
-    else if ((o.addr >= sl->sram_base) &&
+    else if ((o.addr >= sl->sram_base) && (o.size == 0) &&
             (o.addr < sl->sram_base + sl->sram_size))
         o.size = sl->sram_size;
     err = stlink_fread(sl, o.filename, o.addr, o.size);