perf: avoid redundant map lookup in AddComponentResourceEntries()
(#46255)
* perf: avoid double map lookup in ElectronComponentExtensionResourceManager::AddComponentResourceEntries() * perf: move the path key when calling try_emplace()
This commit is contained in:
parent
48a38c0289
commit
8412d78310
1 changed files with 7 additions and 4 deletions
|
@ -84,12 +84,14 @@ void ElectronComponentExtensionResourceManager::AddComponentResourceEntries(
|
|||
gen_folder_path = gen_folder_path.NormalizePathSeparators();
|
||||
|
||||
for (const auto& entry : entries) {
|
||||
const int id = entry.id;
|
||||
base::FilePath resource_path = base::FilePath().AppendASCII(entry.path);
|
||||
resource_path = resource_path.NormalizePathSeparators();
|
||||
|
||||
if (!gen_folder_path.IsParent(resource_path)) {
|
||||
DCHECK(!path_to_resource_id_.contains(resource_path));
|
||||
path_to_resource_id_[resource_path] = entry.id;
|
||||
const auto [_, inserted] =
|
||||
path_to_resource_id_.try_emplace(std::move(resource_path), id);
|
||||
DCHECK(inserted);
|
||||
} else {
|
||||
// If the resource is a generated file, strip the generated folder's path,
|
||||
// so that it can be served from a normal URL (as if it were not
|
||||
|
@ -97,8 +99,9 @@ void ElectronComponentExtensionResourceManager::AddComponentResourceEntries(
|
|||
base::FilePath effective_path =
|
||||
base::FilePath().AppendASCII(resource_path.AsUTF8Unsafe().substr(
|
||||
gen_folder_path.value().length()));
|
||||
DCHECK(!path_to_resource_id_.contains(effective_path));
|
||||
path_to_resource_id_[effective_path] = entry.id;
|
||||
const auto [_, inserted] =
|
||||
path_to_resource_id_.try_emplace(std::move(effective_path), id);
|
||||
DCHECK(inserted);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue