summaryrefslogtreecommitdiffstats
path: root/applypatch
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--applypatch/Android.bp7
-rw-r--r--applypatch/applypatch.cpp2
-rw-r--r--applypatch/vendor_flash_recovery.rc3
3 files changed, 11 insertions, 1 deletions
diff --git a/applypatch/Android.bp b/applypatch/Android.bp
index 55d185201..13a962584 100644
--- a/applypatch/Android.bp
+++ b/applypatch/Android.bp
@@ -31,6 +31,7 @@ cc_library_static {
name: "libapplypatch",
host_supported: true,
+ vendor_available: true,
defaults: [
"applypatch_defaults",
@@ -69,6 +70,7 @@ cc_library_static {
cc_library_static {
name: "libapplypatch_modes",
+ vendor_available: true,
defaults: [
"applypatch_defaults",
@@ -92,6 +94,7 @@ cc_library_static {
cc_binary {
name: "applypatch",
+ vendor: true,
defaults: [
"applypatch_defaults",
@@ -120,6 +123,10 @@ cc_binary {
"libz",
"libziparchive",
],
+
+ init_rc: [
+ "vendor_flash_recovery.rc",
+ ],
}
cc_library_host_static {
diff --git a/applypatch/applypatch.cpp b/applypatch/applypatch.cpp
index 336860cb9..adda6976d 100644
--- a/applypatch/applypatch.cpp
+++ b/applypatch/applypatch.cpp
@@ -279,7 +279,7 @@ bool PatchPartition(const Partition& target, const Partition& source, const Valu
}
FileContents source_file;
- if (ReadPartitionToBuffer(source, &source_file, true)) {
+ if (ReadPartitionToBuffer(source, &source_file, backup_source)) {
return GenerateTarget(target, source_file, patch, bonus, backup_source);
}
diff --git a/applypatch/vendor_flash_recovery.rc b/applypatch/vendor_flash_recovery.rc
new file mode 100644
index 000000000..37a7c2be7
--- /dev/null
+++ b/applypatch/vendor_flash_recovery.rc
@@ -0,0 +1,3 @@
+service vendor_flash_recovery /vendor/bin/install-recovery.sh
+ class main
+ oneshot