commit | e1a2848e918d1d93144e968d748581e785555c86 | [log] [tgz] |
---|---|---|
author | Primiano Tucci <primiano@google.com> | Thu Aug 06 14:43:54 2020 +0200 |
committer | Primiano Tucci <primiano@google.com> | Thu Aug 06 14:43:54 2020 +0200 |
tree | 6ab9c724c4492bf704bdefafa21fdfbbe0a716ed | |
parent | dcb6f8084e45e472a44545d38d5285da0f1b5c6c [diff] |
Fix base::Subprocess move ctor and operator= base::Subprocess move ctor/operator= had a classic std::move bug. The Subprocess dtor kills the process if pid_ is non-zero. std::move() doesn't clear pid_ because it's an int. As a matter of facts, in some cases (when the compiler doesn't elide a move because non trivial) the moved-from object would kill the process being moved. Bug: 162505491 Test: perfetto_unittests --gtest_filter=SubprocessTest Change-Id: Ia08222a8a43959ecb65a8f166c1b0db39d3073b6
Perfetto is a production-grade open-source stack for performance instrumentation and trace analysis. It offers services and libraries and for recording system-level and app-level traces, native + java heap profiling, a library for analyzing traces using SQL and a web-based UI to visualize and explore multi-GB traces.
See https://perfetto.dev/docs or the /docs/ directory for documentation.