0

Fix invalid std::any_of call in CreateTracingOutputSharedMemory.

TraceLog::GetTrackEventSessions returns std::vector, not
std::vector&. This means the code calls std::any_of with begin and
end iterators obtained from a different instances of std::vector.

Bug: 380411640
Change-Id: I3ad8f3a6bac36cc1cf383ae919f541d625a5b7da
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6343772
Reviewed-by: Kramer Ge <fangzhoug@chromium.org>
Auto-Submit: Piotr Tworek <piotr.tworek@xperi.com>
Reviewed-by: Primiano Tucci <primiano@chromium.org>
Commit-Queue: Primiano Tucci <primiano@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1432120}
This commit is contained in:
Piotr Tworek
2025-03-13 08:17:52 -07:00
committed by Chromium LUCI CQ
parent ac0740d88f
commit a794da6583

@ -157,9 +157,9 @@ base::UnsafeSharedMemoryRegion CreateTracingOutputSharedMemory() {
DCHECK(startup_config.IsEnabled() || trace_log->IsEnabled());
if (!startup_config.IsEnabled()) {
bool has_relevant_config = std::any_of(
trace_log->GetTrackEventSessions().begin(),
trace_log->GetTrackEventSessions().end(), [](const auto& session) {
const auto sessions = trace_log->GetTrackEventSessions();
bool has_relevant_config =
std::any_of(sessions.begin(), sessions.end(), [](const auto& session) {
return session.backend_type == perfetto::kCustomBackend &&
!session.config.has_interceptor_config();
});