diff options
author | Doug Zongker <dougz@android.com> | 2010-02-12 10:21:00 -0800 |
---|---|---|
committer | Doug Zongker <dougz@android.com> | 2010-02-12 12:20:49 -0800 |
commit | 42265390d993664e7797abc12d7e6bd1c2a6dc6b (patch) | |
tree | e982a1ad0f901d68862da0941292f8cb2fba44ab | |
parent | e3265fb743e13a1b602f220f58b398d82772eabb (diff) | |
download | build-42265390d993664e7797abc12d7e6bd1c2a6dc6b.zip build-42265390d993664e7797abc12d7e6bd1c2a6dc6b.tar.gz build-42265390d993664e7797abc12d7e6bd1c2a6dc6b.tar.bz2 |
change incremental OTA file install order
(Cherry-pick from donut.)
Delete the old recovery-from-boot patch before patching system files,
then install the new one at the end of the process. Also fix an issue
with applypatch returning the wrong status.
Change-Id: I614fce39f307eded696ba792912b863f9fb0580b
-rw-r--r-- | tools/applypatch/applypatch.c | 2 | ||||
-rwxr-xr-x | tools/releasetools/ota_from_target_files | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/tools/applypatch/applypatch.c b/tools/applypatch/applypatch.c index e69a2fb..9b0c915 100644 --- a/tools/applypatch/applypatch.c +++ b/tools/applypatch/applypatch.c @@ -839,7 +839,7 @@ int applypatch(int argc, char** argv) { if (result != 0) { if (retry == 0) { printf("applying patch failed\n"); - return result; + return result != 0; } else { printf("applying patch failed; retrying\n"); } diff --git a/tools/releasetools/ota_from_target_files b/tools/releasetools/ota_from_target_files index dddaafc..920ce8f 100755 --- a/tools/releasetools/ota_from_target_files +++ b/tools/releasetools/ota_from_target_files @@ -751,7 +751,8 @@ 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") + script.DeleteFiles(["/system/recovery-from-boot.p", + "/system/etc/install-recovery.sh"]) print "recovery image changed; including as patch from boot." else: print "recovery image unchanged; skipping." @@ -787,6 +788,10 @@ def WriteIncrementalOTAPackage(target_zip, source_zip, output_zip): script.Print("Unpacking new files...") script.UnpackPackageDir("system", "/system") + if updating_recovery: + script.Print("Unpacking new recovery...") + script.UnpackPackageDir("recovery", "/system") + script.Print("Symlinks and permissions...") # Create all the symlinks that don't already exist, or point to |