summaryrefslogtreecommitdiffstats
path: root/applypatch
diff options
context:
space:
mode:
Diffstat (limited to 'applypatch')
-rw-r--r--applypatch/Android.bp2
-rw-r--r--applypatch/applypatch.cpp5
-rw-r--r--applypatch/freecache.cpp6
3 files changed, 10 insertions, 3 deletions
diff --git a/applypatch/Android.bp b/applypatch/Android.bp
index b37614072..d3efa152b 100644
--- a/applypatch/Android.bp
+++ b/applypatch/Android.bp
@@ -30,6 +30,8 @@ cc_defaults {
cc_library_static {
name: "libapplypatch",
+ host_supported: true,
+
defaults: [
"applypatch_defaults",
],
diff --git a/applypatch/applypatch.cpp b/applypatch/applypatch.cpp
index 04b964b17..73701abc9 100644
--- a/applypatch/applypatch.cpp
+++ b/applypatch/applypatch.cpp
@@ -450,9 +450,8 @@ int CacheSizeCheck(size_t bytes) {
if (MakeFreeSpaceOnCache(bytes) < 0) {
printf("unable to make %zu bytes available on /cache\n", bytes);
return 1;
- } else {
- return 0;
}
+ return 0;
}
// This function applies binary patches to EMMC target files in a way that is safe (the original
@@ -477,7 +476,7 @@ int CacheSizeCheck(size_t bytes) {
// become obsolete since we have dropped the support for patching non-EMMC targets (EMMC targets
// have the size embedded in the filename).
int applypatch(const char* source_filename, const char* target_filename,
- const char* target_sha1_str, size_t target_size __unused,
+ const char* target_sha1_str, size_t /* target_size */,
const std::vector<std::string>& patch_sha1_str,
const std::vector<std::unique_ptr<Value>>& patch_data, const Value* bonus_data) {
printf("patch %s: ", source_filename);
diff --git a/applypatch/freecache.cpp b/applypatch/freecache.cpp
index 0a40baa97..ec1d20cec 100644
--- a/applypatch/freecache.cpp
+++ b/applypatch/freecache.cpp
@@ -111,6 +111,12 @@ static std::set<std::string> FindExpendableFiles() {
}
int MakeFreeSpaceOnCache(size_t bytes_needed) {
+#ifndef __ANDROID__
+ // TODO (xunchang) implement a heuristic cache size check during host simulation.
+ printf("Skip making (%zu) bytes free space on cache; program is running on host\n", bytes_needed);
+ return 0;
+#endif
+
size_t free_now = FreeSpaceForFile("/cache");
printf("%zu bytes free on /cache (%zu needed)\n", free_now, bytes_needed);