Merge "Use flags = 0 to avoid fd closing for child updater process"
am: 50bda24f1e
Change-Id: I0ddb3f3cb29d63922f0c3972e5800f03bd5a85ac
This commit is contained in:
@@ -342,7 +342,9 @@ static int try_update_binary(const std::string& package, ZipArchiveHandle zip, b
|
|||||||
|
|
||||||
// The updater in child process writes to the pipe to communicate with recovery.
|
// The updater in child process writes to the pipe to communicate with recovery.
|
||||||
android::base::unique_fd pipe_read, pipe_write;
|
android::base::unique_fd pipe_read, pipe_write;
|
||||||
if (!android::base::Pipe(&pipe_read, &pipe_write)) {
|
// Explicitly disable O_CLOEXEC using 0 as the flags (last) parameter to Pipe
|
||||||
|
// so that the child updater process will recieve a non-closed fd.
|
||||||
|
if (!android::base::Pipe(&pipe_read, &pipe_write, 0)) {
|
||||||
PLOG(ERROR) << "Failed to create pipe for updater-recovery communication";
|
PLOG(ERROR) << "Failed to create pipe for updater-recovery communication";
|
||||||
return INSTALL_CORRUPT;
|
return INSTALL_CORRUPT;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user