Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(249)

Unified Diff: content/browser/frame_host/navigation_entry_impl.cc

Issue 2742333002: Remove ScopedVector from content/browser/ [1]. (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/frame_host/navigation_entry_impl.cc
diff --git a/content/browser/frame_host/navigation_entry_impl.cc b/content/browser/frame_host/navigation_entry_impl.cc
index 9d0d22c51d13b7fcefe9fd4efb26983ebdf868a8..ef704580195593bb9bd9a13bfb810100a11de94c 100644
--- a/content/browser/frame_host/navigation_entry_impl.cc
+++ b/content/browser/frame_host/navigation_entry_impl.cc
@@ -74,10 +74,10 @@ void RecursivelyGenerateFrameEntries(
std::vector<base::NullableString16> empty_file_list;
for (const ExplodedFrameState& child_state : state.children) {
- NavigationEntryImpl::TreeNode* child_node =
- new NavigationEntryImpl::TreeNode(node, nullptr);
- node->children.push_back(child_node);
- RecursivelyGenerateFrameEntries(child_state, empty_file_list, child_node);
+ node->children.push_back(
+ base::MakeUnique<NavigationEntryImpl::TreeNode>(node, nullptr));
+ RecursivelyGenerateFrameEntries(child_state, empty_file_list,
+ node->children.back().get());
}
}
@@ -106,7 +106,7 @@ void RecursivelyGenerateFrameState(
state->children.resize(node->children.size());
for (size_t i = 0; i < node->children.size(); ++i) {
- RecursivelyGenerateFrameState(node->children[i], &state->children[i],
+ RecursivelyGenerateFrameState(node->children[i].get(), &state->children[i],
referenced_files);
}
}
@@ -174,7 +174,7 @@ NavigationEntryImpl::TreeNode::CloneAndReplace(
// Recursively clone the children if needed.
if (!is_target_frame || clone_children_of_target) {
for (size_t i = 0; i < children.size(); i++) {
- NavigationEntryImpl::TreeNode* child = children[i];
+ const auto& child = children[i];
// Don't check whether it's still in the tree if |current_frame_tree_node|
// is null.
@@ -819,7 +819,7 @@ void NavigationEntryImpl::AddOrUpdateFrameEntry(
// Now check whether we have a TreeNode for the node itself.
const std::string& unique_name = frame_tree_node->unique_name();
- for (TreeNode* child : parent_node->children) {
+ for (const auto& child : parent_node->children) {
if (child->frame_entry->frame_unique_name() == unique_name) {
// If the document of the FrameNavigationEntry is changing, we must clear
// any child FrameNavigationEntries.
@@ -846,7 +846,8 @@ void NavigationEntryImpl::AddOrUpdateFrameEntry(
frame_entry->SetPageState(page_state);
frame_entry->set_redirect_chain(redirect_chain);
parent_node->children.push_back(
- new NavigationEntryImpl::TreeNode(parent_node, frame_entry));
+ base::MakeUnique<NavigationEntryImpl::TreeNode>(parent_node,
+ frame_entry));
}
FrameNavigationEntry* NavigationEntryImpl::GetFrameEntry(
@@ -861,7 +862,7 @@ std::map<std::string, bool> NavigationEntryImpl::GetSubframeUniqueNames(
NavigationEntryImpl::TreeNode* tree_node = FindFrameEntry(frame_tree_node);
if (tree_node) {
// Return the names of all immediate children.
- for (TreeNode* child : tree_node->children) {
+ for (const auto& child : tree_node->children) {
// Keep track of whether we would be loading about:blank, since the
// renderer should be allowed to just commit the initial blank frame if
// that was the default URL. PageState doesn't matter there, because
@@ -902,8 +903,8 @@ void NavigationEntryImpl::ClearStaleFrameEntriesForNewFrame(
// Enqueue any children and keep looking if the current node doesn't match.
if (!node->MatchesFrame(frame_tree_node)) {
- for (auto* child : node->children) {
- work_queue.push(child);
+ for (const auto& child : node->children) {
+ work_queue.push(child.get());
}
continue;
}
@@ -912,8 +913,11 @@ void NavigationEntryImpl::ClearStaleFrameEntriesForNewFrame(
// tree of FrameNavigationEntries and the FrameTree.
if (!InSameTreePosition(frame_tree_node, node)) {
NavigationEntryImpl::TreeNode* parent_node = node->parent;
- auto it = std::find(parent_node->children.begin(),
- parent_node->children.end(), node);
+ auto it = std::find_if(
+ parent_node->children.begin(), parent_node->children.end(),
+ [node](const std::unique_ptr<NavigationEntryImpl::TreeNode>& item) {
+ return item.get() == node;
+ });
CHECK(it != parent_node->children.end());
parent_node->children.erase(it);
}
@@ -947,8 +951,8 @@ NavigationEntryImpl::TreeNode* NavigationEntryImpl::FindFrameEntry(
return node;
// Enqueue any children and keep looking.
- for (auto* child : node->children)
- work_queue.push(child);
+ for (const auto& child : node->children)
+ work_queue.push(child.get());
}
return nullptr;
}

Powered by Google App Engine
This is Rietveld 408576698