diff options
author | Tao Bao <tbao@google.com> | 2017-09-14 00:35:47 +0200 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-09-14 00:35:47 +0200 |
commit | 2010f84297e6712664561a976854fe7f64fcb2d0 (patch) | |
tree | 961f9f6b5630cd28f8a8da2f1cb9e3b81684276e | |
parent | Merge "Close cmd_pipe properly after updater test finishes" am: 64307daf5b am: a11601da9b (diff) | |
parent | Merge "Remove EXPAND/STRINGIFY macros." am: 6e7df82c7b (diff) | |
download | android_bootable_recovery-2010f84297e6712664561a976854fe7f64fcb2d0.tar android_bootable_recovery-2010f84297e6712664561a976854fe7f64fcb2d0.tar.gz android_bootable_recovery-2010f84297e6712664561a976854fe7f64fcb2d0.tar.bz2 android_bootable_recovery-2010f84297e6712664561a976854fe7f64fcb2d0.tar.lz android_bootable_recovery-2010f84297e6712664561a976854fe7f64fcb2d0.tar.xz android_bootable_recovery-2010f84297e6712664561a976854fe7f64fcb2d0.tar.zst android_bootable_recovery-2010f84297e6712664561a976854fe7f64fcb2d0.zip |
-rw-r--r-- | common.h | 5 | ||||
-rw-r--r-- | install.cpp | 2 | ||||
-rw-r--r-- | recovery.cpp | 6 |
3 files changed, 9 insertions, 4 deletions
@@ -22,8 +22,9 @@ #include <string> -#define STRINGIFY(x) #x -#define EXPAND(x) STRINGIFY(x) +// Not using the command-line defined macro here because this header could be included by +// device-specific recovery libraries. We static assert the value consistency in recovery.cpp. +static constexpr int kRecoveryApiVersion = 3; class RecoveryUI; diff --git a/install.cpp b/install.cpp index 586dbbe2c..507161c2e 100644 --- a/install.cpp +++ b/install.cpp @@ -290,7 +290,7 @@ int update_binary_command(const std::string& package, ZipArchiveHandle zip, *cmd = { binary_path, - EXPAND(RECOVERY_API_VERSION), // defined in Android.mk + std::to_string(kRecoveryApiVersion), std::to_string(status_fd), package, }; diff --git a/recovery.cpp b/recovery.cpp index 6f62ff17c..d037b7971 100644 --- a/recovery.cpp +++ b/recovery.cpp @@ -125,6 +125,10 @@ static const int BATTERY_WITH_CHARGER_OK_PERCENTAGE = 15; static constexpr const char* RECOVERY_WIPE = "/etc/recovery.wipe"; static constexpr const char* DEFAULT_LOCALE = "en-US"; +// We define RECOVERY_API_VERSION in Android.mk, which will be picked up by build system and packed +// into target_files.zip. Assert the version defined in code and in Android.mk are consistent. +static_assert(kRecoveryApiVersion == RECOVERY_API_VERSION, "Mismatching recovery API versions."); + static std::string locale; static bool has_cache = false; @@ -1498,7 +1502,7 @@ int main(int argc, char **argv) { property_list(print_property, NULL); printf("\n"); - ui->Print("Supported API: %d\n", RECOVERY_API_VERSION); + ui->Print("Supported API: %d\n", kRecoveryApiVersion); int status = INSTALL_SUCCESS; |