From cfd7db6d8494c7d3169a4eac0dc63737a24ff1d1 Mon Sep 17 00:00:00 2001 From: Doug Zongker Date: Wed, 7 Oct 2009 11:35:53 -0700 Subject: [PATCH] move recovery image to the top of the OTA package Make the recovery image be the first thing installed in system/ in the OTA package, so it will get installed even if the system partition fills during OTA installation. --- tools/releasetools/ota_from_target_files | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tools/releasetools/ota_from_target_files b/tools/releasetools/ota_from_target_files index 4aaad37e10..1aeb0566df 100755 --- a/tools/releasetools/ota_from_target_files +++ b/tools/releasetools/ota_from_target_files @@ -303,7 +303,7 @@ def MakeRecoveryPatch(output_zip, recovery_img, boot_img): """ patch = Difference(recovery_img, boot_img, "imgdiff") - common.ZipWriteStr(output_zip, "system/recovery-from-boot.p", patch) + common.ZipWriteStr(output_zip, "recovery/recovery-from-boot.p", patch) Item.Get("system/recovery-from-boot.p", dir=False) # Images with different content will have a different first page, so @@ -324,7 +324,7 @@ fi 'header_sha1': header_sha1, 'recovery_size': recovery_img.size, 'recovery_sha1': recovery_img.sha1 } - common.ZipWriteStr(output_zip, "system/etc/install-recovery.sh", sh) + common.ZipWriteStr(output_zip, "recovery/etc/install-recovery.sh", sh) return Item.Get("system/etc/install-recovery.sh", dir=False) @@ -360,6 +360,7 @@ def WriteFullOTAPackage(input_zip, output_zip): script.FormatPartition("system") script.Mount("MTD", "system", "/system") + script.UnpackPackageDir("recovery", "/system") script.UnpackPackageDir("system", "/system") symlinks = CopySystemFiles(input_zip, output_zip) @@ -650,6 +651,7 @@ def WriteIncrementalOTAPackage(target_zip, source_zip, output_zip): # as fodder for constructing the recovery image. recovery_sh_item = MakeRecoveryPatch(output_zip, target_recovery, target_boot) + script.UnpackPackageDir("recovery", "/system") print "recovery image changed; including as patch from boot." else: print "recovery image unchanged; skipping."