From 4e33d1690dbb24dff31384cff165ba737aad5874 Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Fri, 4 Apr 2025 16:55:27 -0500 Subject: [PATCH] refactor: instantiate `navigation_entries` local variable on the stack (#46453) * refactor: instantiate navigation_entries on the stack instead of the heap * refactor: reserve the full size of navigation_entries * refactor: use emplace_back to simplify the code a little --- shell/browser/api/electron_api_web_contents.cc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/shell/browser/api/electron_api_web_contents.cc b/shell/browser/api/electron_api_web_contents.cc index f1803661f9c4..abaf90658231 100644 --- a/shell/browser/api/electron_api_web_contents.cc +++ b/shell/browser/api/electron_api_web_contents.cc @@ -2518,8 +2518,9 @@ void WebContents::RestoreHistory( return; } - auto navigation_entries = std::make_unique< - std::vector>>(); + auto navigation_entries = + std::vector>{}; + navigation_entries.reserve(entries.size()); blink::UserAgentOverride ua_override; ua_override.ua_string_override = GetUserAgent(); @@ -2539,14 +2540,13 @@ void WebContents::RestoreHistory( nav_entry->SetIsOverridingUserAgent( !ua_override.ua_string_override.empty()); - navigation_entries->push_back( - std::unique_ptr(nav_entry)); + navigation_entries.emplace_back(nav_entry); } - if (!navigation_entries->empty()) { + if (!navigation_entries.empty()) { web_contents()->SetUserAgentOverride(ua_override, false); web_contents()->GetController().Restore( - index, content::RestoreType::kRestored, navigation_entries.get()); + index, content::RestoreType::kRestored, &navigation_entries); web_contents()->GetController().LoadIfNecessary(); } }