aboutsummaryrefslogtreecommitdiffstats
path: root/applypatch/applypatch.cpp
diff options
context:
space:
mode:
authorTianjie Xu <xunchang@google.com>2016-10-18 13:37:18 -0700
committerTianjie Xu <xunchang@google.com>2016-10-18 21:22:48 +0000
commit984d7d058e65ddc1b8a1ffc79a5f178ad88dd596 (patch)
tree2f6a5b80d843b8114757fc38d2cb878717d72c43 /applypatch/applypatch.cpp
parent2b17b24ae5eccd6c472c06abde93b5b83950c658 (diff)
downloadandroid_bootable_recovery-984d7d058e65ddc1b8a1ffc79a5f178ad88dd596.tar.gz
android_bootable_recovery-984d7d058e65ddc1b8a1ffc79a5f178ad88dd596.tar.bz2
android_bootable_recovery-984d7d058e65ddc1b8a1ffc79a5f178ad88dd596.zip
Fix applypatch_check failure when applying update on angler
Applypatch_check should be skipped if no sha is specified. As the comments said: "It's okay to specify no sha1s; the check will pass if the LoadFileContents is successful. Useful for reading partitions, where the filename encodes the sha1s." Test: The update package applied on angler successfully. Bug: 32243751 Change-Id: Ib8f3dadf19f745c2dbd350d60da46ab12d75bc87
Diffstat (limited to 'applypatch/applypatch.cpp')
-rw-r--r--applypatch/applypatch.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/applypatch/applypatch.cpp b/applypatch/applypatch.cpp
index cf155607..48e4c838 100644
--- a/applypatch/applypatch.cpp
+++ b/applypatch/applypatch.cpp
@@ -430,7 +430,7 @@ int applypatch_check(const char* filename, const std::vector<std::string>& patch
// partitions, where the filename encodes the sha1s; no need to
// check them twice.)
if (LoadFileContents(filename, &file) != 0 ||
- FindMatchingPatch(file.sha1, patch_sha1_str) < 0) {
+ (patch_sha1_str.size() > 0 && FindMatchingPatch(file.sha1, patch_sha1_str) < 0)) {
printf("file \"%s\" doesn't have any of expected "
"sha1 sums; checking cache\n", filename);