From 194e23910c13a68097f7dc7d058fdecd5ebd0b08 Mon Sep 17 00:00:00 2001 From: Mark Mentovai Date: Wed, 1 Apr 2020 17:03:20 -0400 Subject: [PATCH] Change for loops to use const references where they did not previously From cl/304219049: Optimize C++11 range-based for loops where the variable is copied in each iteration but it would suffice to obtain it by const reference. This is only applied to loop variables of types that are expensive to copy which means they are not trivially copyable or have a non-trivial copy constructor or destructor. To ensure that it is safe to replace the copy with a const reference, the following heuristic is employed: - The loop variable is const qualified. - The loop variable is not const, but only const methods or operators are invoked on it, or it is used as const reference or value argument in constructors or function calls. Change-Id: I5755eb523f60744079b0eb50424395079dcb0f02 Reviewed-on: https://chromium-review.googlesource.com/c/crashpad/crashpad/+/2132844 Reviewed-by: Joshua Peraza Commit-Queue: Mark Mentovai --- handler/minidump_to_upload_parameters.cc | 2 +- minidump/minidump_unloaded_module_writer.cc | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/handler/minidump_to_upload_parameters.cc b/handler/minidump_to_upload_parameters.cc index 9e26d877..6b64081e 100644 --- a/handler/minidump_to_upload_parameters.cc +++ b/handler/minidump_to_upload_parameters.cc @@ -50,7 +50,7 @@ std::map BreakpadHTTPFormParametersFromMinidump( } } - for (std::string annotation : module->AnnotationsVector()) { + for (const std::string& annotation : module->AnnotationsVector()) { list_annotations.append(annotation); list_annotations.append("\n"); } diff --git a/minidump/minidump_unloaded_module_writer.cc b/minidump/minidump_unloaded_module_writer.cc index 855e1967..c8a5f0fd 100644 --- a/minidump/minidump_unloaded_module_writer.cc +++ b/minidump/minidump_unloaded_module_writer.cc @@ -123,7 +123,8 @@ void MinidumpUnloadedModuleListWriter::InitializeFromSnapshot( DCHECK_EQ(state(), kStateMutable); DCHECK(unloaded_modules_.empty()); - for (auto unloaded_module_snapshot : unloaded_module_snapshots) { + for (const UnloadedModuleSnapshot& unloaded_module_snapshot : + unloaded_module_snapshots) { auto unloaded_module = std::make_unique(); unloaded_module->InitializeFromSnapshot(unloaded_module_snapshot); AddUnloadedModule(std::move(unloaded_module));