diff options
author | Tao Bao <tbao@google.com> | 2016-09-27 03:43:41 +0200 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2016-09-27 03:43:41 +0200 |
commit | 87f4edf4678f1921b086074b1a9e6b66ee2d3f73 (patch) | |
tree | b8d5b18c3f030b70fffc5da76bbb2ec972f26b0d /recovery.cpp | |
parent | Merge "Switch to <android-base/properties.h>." (diff) | |
parent | Duplicate the last_install content into last_log. (diff) | |
download | android_bootable_recovery-87f4edf4678f1921b086074b1a9e6b66ee2d3f73.tar android_bootable_recovery-87f4edf4678f1921b086074b1a9e6b66ee2d3f73.tar.gz android_bootable_recovery-87f4edf4678f1921b086074b1a9e6b66ee2d3f73.tar.bz2 android_bootable_recovery-87f4edf4678f1921b086074b1a9e6b66ee2d3f73.tar.lz android_bootable_recovery-87f4edf4678f1921b086074b1a9e6b66ee2d3f73.tar.xz android_bootable_recovery-87f4edf4678f1921b086074b1a9e6b66ee2d3f73.tar.zst android_bootable_recovery-87f4edf4678f1921b086074b1a9e6b66ee2d3f73.zip |
Diffstat (limited to 'recovery.cpp')
-rw-r--r-- | recovery.cpp | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/recovery.cpp b/recovery.cpp index bd06aaffa..91c18b529 100644 --- a/recovery.cpp +++ b/recovery.cpp @@ -1554,15 +1554,19 @@ int main(int argc, char **argv) { BATTERY_OK_PERCENTAGE); // Log the error code to last_install when installation skips due to // low battery. - FILE* install_log = fopen_path(LAST_INSTALL_FILE, "w"); - if (install_log != nullptr) { - fprintf(install_log, "%s\n", update_package); - fprintf(install_log, "0\n"); - fprintf(install_log, "error: %d\n", kLowBattery); - fclose(install_log); - } else { - PLOG(ERROR) << "failed to open last_install"; + std::vector<std::string> log_buffer = { + update_package, + "0", // install result + "error: " + std::to_string(kLowBattery), + }; + std::string log_content = android::base::Join(log_buffer, "\n"); + if (!android::base::WriteStringToFile(log_content, LAST_INSTALL_FILE)) { + PLOG(ERROR) << "failed to write " << LAST_INSTALL_FILE; } + + // Also write the info into last_log. + LOG(INFO) << log_content; + status = INSTALL_SKIPPED; } else { status = install_package(update_package, &should_wipe_cache, |