summaryrefslogtreecommitdiffstats
path: root/tools/releasetools/blockimgdiff.py
diff options
context:
space:
mode:
authorSami Tolvanen <samitolvanen@google.com>2015-04-17 19:09:02 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-04-17 19:09:02 +0000
commitc4d303e958e1f3475fd1070bdb307b4f675f3bdd (patch)
tree2789b598f98fb83afa6f895175b420cf17fa248f /tools/releasetools/blockimgdiff.py
parent048b3eb0170b8816cd97400a43f7f1523c19c210 (diff)
parent7788547ff34d93b5196933eedb9f006fb1fe9f4d (diff)
downloadbuild-c4d303e958e1f3475fd1070bdb307b4f675f3bdd.zip
build-c4d303e958e1f3475fd1070bdb307b4f675f3bdd.tar.gz
build-c4d303e958e1f3475fd1070bdb307b4f675f3bdd.tar.bz2
am 7788547f: am 586b38cc: Merge "Calculate max_stashed_blocks correctly for block OTA v3"
* commit '7788547ff34d93b5196933eedb9f006fb1fe9f4d': Calculate max_stashed_blocks correctly for block OTA v3
Diffstat (limited to 'tools/releasetools/blockimgdiff.py')
-rw-r--r--tools/releasetools/blockimgdiff.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/releasetools/blockimgdiff.py b/tools/releasetools/blockimgdiff.py
index bb9cdb3..d549f70 100644
--- a/tools/releasetools/blockimgdiff.py
+++ b/tools/releasetools/blockimgdiff.py
@@ -387,6 +387,12 @@ class BlockImageDiff(object):
xf.style,
xf.tgt_ranges.to_string_raw(), src_str))
elif self.version >= 3:
+ # take into account automatic stashing of overlapping blocks
+ if xf.src_ranges.overlaps(xf.tgt_ranges):
+ temp_stash_usage = stashed_blocks + xf.src_ranges.size();
+ if temp_stash_usage > max_stashed_blocks:
+ max_stashed_blocks = temp_stash_usage
+
out.append("%s %s %s %s\n" % (
xf.style,
self.HashBlocks(self.tgt, xf.tgt_ranges),
@@ -405,6 +411,12 @@ class BlockImageDiff(object):
xf.style, xf.patch_start, xf.patch_len,
xf.tgt_ranges.to_string_raw(), src_str))
elif self.version >= 3:
+ # take into account automatic stashing of overlapping blocks
+ if xf.src_ranges.overlaps(xf.tgt_ranges):
+ temp_stash_usage = stashed_blocks + xf.src_ranges.size();
+ if temp_stash_usage > max_stashed_blocks:
+ max_stashed_blocks = temp_stash_usage
+
out.append("%s %d %d %s %s %s %s\n" % (
xf.style,
xf.patch_start, xf.patch_len,