summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDoug Zongker <dougz@android.com>2010-02-12 10:21:00 -0800
committerDoug Zongker <dougz@android.com>2010-02-12 12:20:49 -0800
commit42265390d993664e7797abc12d7e6bd1c2a6dc6b (patch)
treee982a1ad0f901d68862da0941292f8cb2fba44ab
parente3265fb743e13a1b602f220f58b398d82772eabb (diff)
downloadbuild-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.c2
-rwxr-xr-xtools/releasetools/ota_from_target_files7
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