From 11c35626dae4db455ee47719a76a3fe76f849fda Mon Sep 17 00:00:00 2001 From: "trop[bot]" <37223003+trop[bot]@users.noreply.github.com> Date: Fri, 28 Mar 2025 12:27:28 -0500 Subject: [PATCH] perf: avoid redundant map lookups in `GetStorageMask()` (#46346) * perf: avoid a redundant map lookuop in GetStorageMask() Co-authored-by: Charles Kerr * perf: avoid a redundant map lookup in GetDataTypeMask() Co-authored-by: Charles Kerr --------- Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: Charles Kerr --- shell/browser/api/electron_api_session.cc | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/shell/browser/api/electron_api_session.cc b/shell/browser/api/electron_api_session.cc index 0e3f41e2bbd5..dcb89142e73f 100644 --- a/shell/browser/api/electron_api_session.cc +++ b/shell/browser/api/electron_api_session.cc @@ -13,6 +13,7 @@ #include "base/command_line.h" #include "base/containers/fixed_flat_map.h" +#include "base/containers/map_util.h" #include "base/files/file_enumerator.h" #include "base/files/file_path.h" #include "base/files/file_util.h" @@ -139,9 +140,8 @@ uint32_t GetStorageMask(const std::vector& storage_types) { uint32_t storage_mask = 0; for (const auto& it : storage_types) { - auto type = base::ToLowerASCII(it); - if (Lookup.contains(type)) - storage_mask |= Lookup.at(type); + if (const uint32_t* val = base::FindOrNull(Lookup, base::ToLowerASCII(it))) + storage_mask |= *val; } return storage_mask; } @@ -179,9 +179,8 @@ BrowsingDataRemover::DataType GetDataTypeMask( const std::vector& data_types) { BrowsingDataRemover::DataType mask = 0u; for (const auto& type : data_types) { - if (kDataTypeLookup.contains(type)) { - mask |= kDataTypeLookup.at(type); - } + if (const auto* val = base::FindOrNull(kDataTypeLookup, type)) + mask |= *val; } return mask; }