Merge "Fix a lambda capture problem in TextDumpsysSection" into rvc-dev am: 35a18b50c5 am: ddcab6fd21
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11756603 Change-Id: I600de2a9a06834c454f29f6bfc0266a35b6600e4
This commit is contained in:
@@ -476,14 +476,15 @@ status_t TextDumpsysSection::Execute(ReportWriter* writer) const {
|
||||
|
||||
// Run dumping thread
|
||||
const uint64_t start = Nanotime();
|
||||
std::thread worker([&]() {
|
||||
std::thread worker([write_fd = std::move(dumpPipe.writeFd()), service = std::move(service),
|
||||
this]() mutable {
|
||||
// Don't crash the service if writing to a closed pipe (may happen if dumping times out)
|
||||
signal(SIGPIPE, sigpipe_handler);
|
||||
status_t err = service->dump(dumpPipe.writeFd().get(), mArgs);
|
||||
status_t err = service->dump(write_fd.get(), this->mArgs);
|
||||
if (err != OK) {
|
||||
ALOGW("[%s] dump thread failed. Error: %s", this->name.string(), strerror(-err));
|
||||
}
|
||||
dumpPipe.writeFd().reset();
|
||||
write_fd.reset();
|
||||
});
|
||||
|
||||
// Collect dump content
|
||||
|
||||
Reference in New Issue
Block a user