summaryrefslogtreecommitdiffstats
path: root/recovery-persist.cpp
diff options
context:
space:
mode:
authorTianjie Xu <xunchang@google.com>2017-07-11 00:13:33 +0200
committerTianjie Xu <xunchang@google.com>2017-07-19 21:17:41 +0200
commitde6735e80cc65be50381388640d94f1b1d0f20fa (patch)
treebdcda7cd5a4e2baa1f45c66f6a1698df47119175 /recovery-persist.cpp
parentMerge "Fix the missing char when showing recovery logs." (diff)
downloadandroid_bootable_recovery-de6735e80cc65be50381388640d94f1b1d0f20fa.tar
android_bootable_recovery-de6735e80cc65be50381388640d94f1b1d0f20fa.tar.gz
android_bootable_recovery-de6735e80cc65be50381388640d94f1b1d0f20fa.tar.bz2
android_bootable_recovery-de6735e80cc65be50381388640d94f1b1d0f20fa.tar.lz
android_bootable_recovery-de6735e80cc65be50381388640d94f1b1d0f20fa.tar.xz
android_bootable_recovery-de6735e80cc65be50381388640d94f1b1d0f20fa.tar.zst
android_bootable_recovery-de6735e80cc65be50381388640d94f1b1d0f20fa.zip
Diffstat (limited to '')
-rw-r--r--recovery-persist.cpp30
1 files changed, 15 insertions, 15 deletions
diff --git a/recovery-persist.cpp b/recovery-persist.cpp
index d706ccac8..dbce7ff74 100644
--- a/recovery-persist.cpp
+++ b/recovery-persist.cpp
@@ -59,21 +59,21 @@ static void check_and_fclose(FILE *fp, const char *name) {
}
static void copy_file(const char* source, const char* destination) {
- FILE* dest_fp = fopen(destination, "w");
- if (dest_fp == nullptr) {
- PLOG(ERROR) << "Can't open " << destination;
- } else {
- FILE* source_fp = fopen(source, "r");
- if (source_fp != nullptr) {
- char buf[4096];
- size_t bytes;
- while ((bytes = fread(buf, 1, sizeof(buf), source_fp)) != 0) {
- fwrite(buf, 1, bytes, dest_fp);
- }
- check_and_fclose(source_fp, source);
- }
- check_and_fclose(dest_fp, destination);
+ FILE* dest_fp = fopen(destination, "we");
+ if (dest_fp == nullptr) {
+ PLOG(ERROR) << "Can't open " << destination;
+ } else {
+ FILE* source_fp = fopen(source, "re");
+ if (source_fp != nullptr) {
+ char buf[4096];
+ size_t bytes;
+ while ((bytes = fread(buf, 1, sizeof(buf), source_fp)) != 0) {
+ fwrite(buf, 1, bytes, dest_fp);
+ }
+ check_and_fclose(source_fp, source);
}
+ check_and_fclose(dest_fp, destination);
+ }
}
static bool rotated = false;
@@ -120,7 +120,7 @@ int main(int argc, char **argv) {
*/
bool has_cache = false;
static const char mounts_file[] = "/proc/mounts";
- FILE *fp = fopen(mounts_file, "r");
+ FILE* fp = fopen(mounts_file, "re");
if (!fp) {
PLOG(ERROR) << "failed to open " << mounts_file;
} else {