ddsect.sh: fix calculating END_ADDRESS
authorAntonio Ospite <ao2@ao2.it>
Sat, 28 Jun 2014 08:53:53 +0000 (10:53 +0200)
committerAntonio Ospite <ao2@ao2.it>
Sat, 28 Jun 2014 08:53:53 +0000 (10:53 +0200)
Calculate the actual end address of the section, this way it could be
reused in other memory layout files.

Adjust also the size calculation, so that the value will be the same as
before.

ddsect.sh

index b1c5122..1a27e5f 100755 (executable)
--- a/ddsect.sh
+++ b/ddsect.sh
@@ -34,11 +34,11 @@ parse_map_file()
   do
     RANGE=$(echo $line | cut -d ':' -f 1)
     START_ADDRESS=$(( $(echo $RANGE | cut -d '-' -f 1) ))
-    END_ADDRESS=$(( $(echo $RANGE | cut -d '-' -f 2) ))
+    END_ADDRESS=$(( $(echo $RANGE | cut -d '-' -f 2) - 1))
 
     NAME=$(echo $line | cut -d ':' -f 2 | sed -e 's/^"//'  -e 's/"$//')
 
-    SIZE=$(($END_ADDRESS - $START_ADDRESS))
+    SIZE=$(($END_ADDRESS - $START_ADDRESS + 1))
 
     SIZE_KiB=$(($SIZE / 1024))