From c547a4d50b92c8f8173bf4222169f87200a76dba Mon Sep 17 00:00:00 2001 From: Ed Heyl Date: Mon, 6 Feb 2012 13:03:43 -0800 Subject: Please do not merge (already submitted downstream); check entire recovery partition on startup Checksum the entire recovery partition at boot time to see if we need to rewrite it, rather than just the first 2kb. Bug: 5668350 Change-Id: I777754f92e8da630ae3c09bb0d4c41884ff62f39 --- tools/releasetools/ota_from_target_files | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/tools/releasetools/ota_from_target_files b/tools/releasetools/ota_from_target_files index 0a27a1902d..1514ea7953 100755 --- a/tools/releasetools/ota_from_target_files +++ b/tools/releasetools/ota_from_target_files @@ -336,13 +336,8 @@ def MakeRecoveryPatch(output_zip, recovery_img, boot_img): boot_type, boot_device = common.GetTypeAndDevice("/boot", OPTIONS.info_dict) recovery_type, recovery_device = common.GetTypeAndDevice("/recovery", OPTIONS.info_dict) - # Images with different content will have a different first page, so - # we check to see if this recovery has already been installed by - # testing just the first 2k. - HEADER_SIZE = 2048 - header_sha1 = common.sha1(recovery_img.data[:HEADER_SIZE]).hexdigest() sh = """#!/system/bin/sh -if ! applypatch -c %(recovery_type)s:%(recovery_device)s:%(header_size)d:%(header_sha1)s; then +if ! applypatch -c %(recovery_type)s:%(recovery_device)s:%(recovery_size)d:%(recovery_sha1)s; then log -t recovery "Installing new recovery image" applypatch %(boot_type)s:%(boot_device)s:%(boot_size)d:%(boot_sha1)s %(recovery_type)s:%(recovery_device)s %(recovery_sha1)s %(recovery_size)d %(boot_sha1)s:/system/recovery-from-boot.p else @@ -350,8 +345,6 @@ else fi """ % { 'boot_size': boot_img.size, 'boot_sha1': boot_img.sha1, - 'header_size': HEADER_SIZE, - 'header_sha1': header_sha1, 'recovery_size': recovery_img.size, 'recovery_sha1': recovery_img.sha1, 'boot_type': boot_type, -- cgit v1.2.3