summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2017-02-03 23:06:49 +0100
committerGerrit Code Review <noreply-gerritcodereview@google.com>2017-02-03 23:06:50 +0100
commit0f275ae56e2017db5ba2a712f84b710e8a9de99e (patch)
tree142570fc6ca714cb049538cbf13e8660cc617530
parentMerge "update_verifier should read dm wrapped partition" (diff)
parentAvoid to call UI functions in child process (diff)
downloadandroid_bootable_recovery-0f275ae56e2017db5ba2a712f84b710e8a9de99e.tar
android_bootable_recovery-0f275ae56e2017db5ba2a712f84b710e8a9de99e.tar.gz
android_bootable_recovery-0f275ae56e2017db5ba2a712f84b710e8a9de99e.tar.bz2
android_bootable_recovery-0f275ae56e2017db5ba2a712f84b710e8a9de99e.tar.lz
android_bootable_recovery-0f275ae56e2017db5ba2a712f84b710e8a9de99e.tar.xz
android_bootable_recovery-0f275ae56e2017db5ba2a712f84b710e8a9de99e.tar.zst
android_bootable_recovery-0f275ae56e2017db5ba2a712f84b710e8a9de99e.zip
-rw-r--r--install.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/install.cpp b/install.cpp
index 959a74222..91e4875cb 100644
--- a/install.cpp
+++ b/install.cpp
@@ -382,7 +382,11 @@ static int try_update_binary(const char* path, ZipArchiveHandle zip, bool* wipe_
umask(022);
close(pipefd[0]);
execv(chr_args[0], const_cast<char**>(chr_args));
- PLOG(ERROR) << "Can't run " << chr_args[0];
+ // Bug: 34769056
+ // We shouldn't use LOG/PLOG in the forked process, since they may cause
+ // the child process to hang. This deadlock results from an improperly
+ // copied mutex in the ui functions.
+ fprintf(stdout, "E:Can't run %s (%s)\n", chr_args[0], strerror(errno));
_exit(-1);
}
close(pipefd[1]);