Update to Chromium version 137.0.7151.0 (#1453031)

This commit is contained in:
Marshall Greenblatt
2025-05-06 12:45:36 -04:00
parent faa85bf980
commit 7944038baf
81 changed files with 731 additions and 680 deletions

View File

@ -1,5 +1,5 @@
diff --git chrome/app/chrome_main_delegate.cc chrome/app/chrome_main_delegate.cc
index 345d2729f1802..10d3294221f3b 100644
index 7cc74f595ff57..4e0e494678d75 100644
--- chrome/app/chrome_main_delegate.cc
+++ chrome/app/chrome_main_delegate.cc
@@ -43,6 +43,7 @@
@ -18,7 +18,7 @@ index 345d2729f1802..10d3294221f3b 100644
// Initializes the user data dir. Must be called before InitializeLocalState().
void InitializeUserDataDir(base::CommandLine* command_line) {
#if BUILDFLAG(IS_WIN)
@@ -622,6 +624,7 @@ void InitializeUserDataDir(base::CommandLine* command_line) {
@@ -624,6 +626,7 @@ void InitializeUserDataDir(base::CommandLine* command_line) {
command_line->AppendSwitchPath(switches::kUserDataDir, user_data_dir);
#endif // BUILDFLAG(IS_WIN)
}
@ -26,7 +26,7 @@ index 345d2729f1802..10d3294221f3b 100644
#if !BUILDFLAG(IS_ANDROID)
void InitLogging(const std::string& process_type) {
@@ -741,6 +744,10 @@ ChromeMainDelegate::~ChromeMainDelegate() {
@@ -743,6 +746,10 @@ ChromeMainDelegate::~ChromeMainDelegate() {
ChromeMainDelegate::~ChromeMainDelegate() = default;
#endif // !BUILDFLAG(IS_ANDROID)
@ -37,7 +37,7 @@ index 345d2729f1802..10d3294221f3b 100644
std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
InvokedIn invoked_in) {
DUMP_WILL_BE_CHECK(base::ThreadPoolInstance::Get());
@@ -766,7 +773,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
@@ -768,7 +775,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
// future session's metrics.
DeferBrowserMetrics(user_data_dir);
@ -46,7 +46,7 @@ index 345d2729f1802..10d3294221f3b 100644
// In the case the process is not the singleton process, the uninstall tasks
// need to be executed here. A window will be displayed asking to close all
// running instances.
@@ -851,7 +858,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
@@ -853,7 +860,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
// Initializes the resource bundle and determines the locale.
std::string actual_locale = LoadLocalState(
@ -56,18 +56,18 @@ index 345d2729f1802..10d3294221f3b 100644
chrome_feature_list_creator->SetApplicationLocale(actual_locale);
chrome_feature_list_creator->OverrideCachedUIStrings();
@@ -866,6 +874,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
@@ -868,6 +876,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
new net::NetworkChangeNotifierFactoryAndroid());
#endif
+#if !BUILDFLAG(ENABLE_CEF)
+ // Avoid CEF crash with multi-threaded-message-loop.
if (base::FeatureList::IsEnabled(
features::kWriteBasicSystemProfileToPersistentHistogramsFile)) {
bool record = true;
bool record = true;
#if BUILDFLAG(IS_ANDROID)
record =
@@ -876,6 +886,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
if (record)
chrome_content_browser_client_->startup_data()->RecordCoreSystemProfile();
if (record) {
chrome_content_browser_client_->startup_data()->RecordCoreSystemProfile();
}
+#endif // !BUILDFLAG(ENABLE_CEF)
@ -232,10 +232,10 @@ index 72eb096075a05..d3866aae87c60 100644
base::PathService::OverrideAndCreateIfNeeded(
diff --git chrome/browser/chrome_browser_main.cc chrome/browser/chrome_browser_main.cc
index 61da14e26c4db..2334d0fab04b5 100644
index 681fd3282078c..8bca99c60d66d 100644
--- chrome/browser/chrome_browser_main.cc
+++ chrome/browser/chrome_browser_main.cc
@@ -27,6 +27,7 @@
@@ -28,6 +28,7 @@
#include "base/trace_event/trace_event.h"
#include "base/values.h"
#include "build/build_config.h"
@ -243,7 +243,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
#include "chrome/browser/active_use_util.h"
#include "chrome/browser/after_startup_task_utils.h"
#include "chrome/browser/browser_features.h"
@@ -432,7 +433,7 @@ void ProcessSingletonNotificationCallbackImpl(
@@ -433,7 +434,7 @@ void ProcessSingletonNotificationCallbackImpl(
return;
}
@ -252,7 +252,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
// The uninstall command-line switch is handled by the origin process; see
// ChromeMainDelegate::PostEarlyInitialization(...). The other process won't
// be able to become the singleton process and will display a window asking
@@ -741,7 +742,7 @@ int ChromeBrowserMainParts::PreEarlyInitialization() {
@@ -749,7 +750,7 @@ int ChromeBrowserMainParts::PreEarlyInitialization() {
return content::RESULT_CODE_NORMAL_EXIT;
}
@ -261,7 +261,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
// If we are running stale binaries then relaunch and exit immediately.
if (upgrade_util::IsRunningOldChrome()) {
if (!upgrade_util::RelaunchChromeBrowser(
@@ -859,7 +860,7 @@ int ChromeBrowserMainParts::OnLocalStateLoaded(
@@ -867,7 +868,7 @@ int ChromeBrowserMainParts::OnLocalStateLoaded(
browser_process_->local_state());
platform_management_service->RefreshCache(base::NullCallback());
@ -270,7 +270,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
if (first_run::IsChromeFirstRun()) {
bool stats_default;
if (GoogleUpdateSettings::GetCollectStatsConsentDefault(&stats_default)) {
@@ -905,6 +906,7 @@ int ChromeBrowserMainParts::ApplyFirstRunPrefs() {
@@ -910,6 +911,7 @@ int ChromeBrowserMainParts::ApplyFirstRunPrefs() {
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
master_prefs_ = std::make_unique<first_run::MasterPrefs>();
@ -278,7 +278,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
std::unique_ptr<installer::InitialPreferences> installer_initial_prefs =
startup_data_->chrome_feature_list_creator()->TakeInitialPrefs();
if (!installer_initial_prefs)
@@ -938,6 +940,7 @@ int ChromeBrowserMainParts::ApplyFirstRunPrefs() {
@@ -943,6 +945,7 @@ int ChromeBrowserMainParts::ApplyFirstRunPrefs() {
master_prefs_->confirm_to_quit);
}
#endif
@ -286,7 +286,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
#endif // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
return content::RESULT_CODE_NORMAL_EXIT;
}
@@ -1007,6 +1010,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() {
@@ -1012,6 +1015,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() {
browser_process_->browser_policy_connector()->OnResourceBundleCreated();
@ -294,7 +294,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
// Android does first run in Java instead of native.
// Chrome OS has its own out-of-box-experience code.
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
@@ -1028,6 +1032,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() {
@@ -1033,6 +1037,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() {
#endif
}
#endif // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
@ -302,7 +302,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
#if BUILDFLAG(IS_MAC)
#if defined(ARCH_CPU_X86_64)
@@ -1395,6 +1400,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1400,6 +1405,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
browser_process_->PreMainMessageLoopRun();
#if BUILDFLAG(IS_WIN)
@ -310,7 +310,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
// If the command line specifies 'uninstall' then we need to work here
// unless we detect another chrome browser running.
if (base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kUninstall)) {
@@ -1406,6 +1412,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1411,6 +1417,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
return ChromeBrowserMainPartsWin::HandleIconsCommands(
*base::CommandLine::ForCurrentProcess());
}
@ -318,7 +318,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
ui::SelectFileDialog::SetFactory(
std::make_unique<ChromeSelectFileDialogFactory>());
@@ -1428,6 +1435,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1433,6 +1440,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
}
#endif
@ -326,7 +326,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kMakeDefaultBrowser)) {
bool is_managed = g_browser_process->local_state()->IsManagedPreference(
@@ -1441,13 +1449,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1446,13 +1454,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
? static_cast<int>(content::RESULT_CODE_NORMAL_EXIT)
: static_cast<int>(CHROME_RESULT_CODE_SHELL_INTEGRATION_FAILED);
}
@ -342,7 +342,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
// We must call DoUpgradeTasks now that we own the browser singleton to
// finish upgrade tasks (swap) and relaunch if necessary.
if (upgrade_util::DoUpgradeTasks(*base::CommandLine::ForCurrentProcess()))
@@ -1491,7 +1500,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1496,7 +1505,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
}
#endif
@ -351,7 +351,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
// Check if there is any machine level Chrome installed on the current
// machine. If yes and the current Chrome process is user level, we do not
// allow the user level Chrome to run. So we notify the user and uninstall
@@ -1573,7 +1582,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1578,7 +1587,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
// Call `PostProfileInit()`and set it up for profiles created later.
profile_init_manager_ = std::make_unique<ProfileInitManager>(this, profile);
@ -360,7 +360,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
// Execute first run specific code after the PrefService has been initialized
// and preferences have been registered since some of the import code depends
// on preferences.
@@ -1594,7 +1603,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1599,7 +1608,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
}
#endif
@ -369,7 +369,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
// Registers Chrome with the Windows Restart Manager, which will restore the
// Chrome session when the computer is restarted after a system update.
// This could be run as late as WM_QUERYENDSESSION for system update reboots,
@@ -1697,6 +1706,11 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1702,6 +1711,11 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
g_browser_process->profile_manager()->GetLastOpenedProfiles();
}
#endif
@ -381,7 +381,7 @@ index 61da14e26c4db..2334d0fab04b5 100644
// This step is costly.
if (browser_creator_->Start(*base::CommandLine::ForCurrentProcess(),
base::FilePath(), profile_info,
@@ -1724,11 +1738,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1729,11 +1743,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
// Create the RunLoop for MainMessageLoopRun() to use and transfer
// ownership of the browser's lifetime to the BrowserProcess.
@ -433,7 +433,7 @@ index e26e3625c99c8..c0d4a95607e37 100644
+#endif
}
diff --git chrome/browser/chrome_content_browser_client.cc chrome/browser/chrome_content_browser_client.cc
index 5b8b1bf1bc86e..8d2274c606ef4 100644
index 3ebb85bbe3c48..896b131108218 100644
--- chrome/browser/chrome_content_browser_client.cc
+++ chrome/browser/chrome_content_browser_client.cc
@@ -48,6 +48,7 @@
@ -444,7 +444,7 @@ index 5b8b1bf1bc86e..8d2274c606ef4 100644
#include "chrome/browser/after_startup_task_utils.h"
#include "chrome/browser/ai/ai_manager.h"
#include "chrome/browser/app_mode/app_mode_utils.h"
@@ -1494,6 +1495,8 @@ ChromeContentBrowserClient::GetPopupNavigationDelegateFactoryForTesting() {
@@ -1504,6 +1505,8 @@ ChromeContentBrowserClient::GetPopupNavigationDelegateFactoryForTesting() {
}
ChromeContentBrowserClient::ChromeContentBrowserClient() {
@ -453,7 +453,7 @@ index 5b8b1bf1bc86e..8d2274c606ef4 100644
#if BUILDFLAG(ENABLE_PLUGINS)
extra_parts_.push_back(
std::make_unique<ChromeContentBrowserClientPluginsPart>());
@@ -1531,6 +1534,11 @@ ChromeContentBrowserClient::~ChromeContentBrowserClient() {
@@ -1541,6 +1544,11 @@ ChromeContentBrowserClient::~ChromeContentBrowserClient() {
}
}
@ -465,7 +465,7 @@ index 5b8b1bf1bc86e..8d2274c606ef4 100644
// static
void ChromeContentBrowserClient::RegisterLocalStatePrefs(
PrefRegistrySimple* registry) {
@@ -4792,9 +4800,11 @@ void ChromeContentBrowserClient::BrowserURLHandlerCreated(
@@ -4837,9 +4845,11 @@ void ChromeContentBrowserClient::BrowserURLHandlerCreated(
&search::HandleNewTabURLReverseRewrite);
#endif // BUILDFLAG(IS_ANDROID)
@ -477,7 +477,7 @@ index 5b8b1bf1bc86e..8d2274c606ef4 100644
}
base::FilePath ChromeContentBrowserClient::GetDefaultDownloadDirectory() {
@@ -6876,7 +6886,7 @@ void ChromeContentBrowserClient::OnNetworkServiceCreated(
@@ -6926,7 +6936,7 @@ void ChromeContentBrowserClient::OnNetworkServiceCreated(
}
}
@ -486,7 +486,7 @@ index 5b8b1bf1bc86e..8d2274c606ef4 100644
content::BrowserContext* context,
bool in_memory,
const base::FilePath& relative_partition_path,
@@ -6894,6 +6904,8 @@ void ChromeContentBrowserClient::ConfigureNetworkContextParams(
@@ -6944,6 +6954,8 @@ void ChromeContentBrowserClient::ConfigureNetworkContextParams(
network_context_params->user_agent = GetUserAgentBasedOnPolicy(context);
network_context_params->accept_language = GetApplicationLocale();
}
@ -495,7 +495,7 @@ index 5b8b1bf1bc86e..8d2274c606ef4 100644
}
std::vector<base::FilePath>
@@ -8032,11 +8044,11 @@ void ChromeContentBrowserClient::OnKeepaliveRequestStarted(
@@ -8084,11 +8096,11 @@ void ChromeContentBrowserClient::OnKeepaliveRequestStarted(
const auto now = base::TimeTicks::Now();
const auto timeout = GetKeepaliveTimerTimeout(context);
keepalive_deadline_ = std::max(keepalive_deadline_, now + timeout);
@ -509,7 +509,7 @@ index 5b8b1bf1bc86e..8d2274c606ef4 100644
FROM_HERE, keepalive_deadline_ - now,
base::BindOnce(
&ChromeContentBrowserClient::OnKeepaliveTimerFired,
@@ -8058,7 +8070,8 @@ void ChromeContentBrowserClient::OnKeepaliveRequestFinished() {
@@ -8110,7 +8122,8 @@ void ChromeContentBrowserClient::OnKeepaliveRequestFinished() {
--num_keepalive_requests_;
if (num_keepalive_requests_ == 0) {
DVLOG(1) << "Stopping the keepalive timer";
@ -519,7 +519,7 @@ index 5b8b1bf1bc86e..8d2274c606ef4 100644
// This deletes the keep alive handle attached to the timer function and
// unblock the shutdown sequence.
}
@@ -8236,7 +8249,7 @@ void ChromeContentBrowserClient::OnKeepaliveTimerFired(
@@ -8288,7 +8301,7 @@ void ChromeContentBrowserClient::OnKeepaliveTimerFired(
const auto now = base::TimeTicks::Now();
const auto then = keepalive_deadline_;
if (now < then) {
@ -529,7 +529,7 @@ index 5b8b1bf1bc86e..8d2274c606ef4 100644
base::BindOnce(&ChromeContentBrowserClient::OnKeepaliveTimerFired,
weak_factory_.GetWeakPtr(),
diff --git chrome/browser/chrome_content_browser_client.h chrome/browser/chrome_content_browser_client.h
index 3542dd8ea5593..dfd89fec1e4a6 100644
index c944bdaf9bbbe..a9e7bd1139c07 100644
--- chrome/browser/chrome_content_browser_client.h
+++ chrome/browser/chrome_content_browser_client.h
@@ -159,6 +159,8 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
@ -541,7 +541,7 @@ index 3542dd8ea5593..dfd89fec1e4a6 100644
// TODO(crbug.com/41356866): This file is about calls from content/ out
// to chrome/ to get values or notify about events, but both of these
// functions are from chrome/ to chrome/ and don't involve content/ at all.
@@ -730,7 +732,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
@@ -733,7 +735,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
override;
void OnNetworkServiceCreated(
network::mojom::NetworkService* network_service) override;
@ -550,7 +550,7 @@ index 3542dd8ea5593..dfd89fec1e4a6 100644
content::BrowserContext* context,
bool in_memory,
const base::FilePath& relative_partition_path,
@@ -1358,7 +1360,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
@@ -1370,7 +1372,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
#if !BUILDFLAG(IS_ANDROID)
uint64_t num_keepalive_requests_ = 0;
@ -560,7 +560,7 @@ index 3542dd8ea5593..dfd89fec1e4a6 100644
#endif
diff --git chrome/browser/prefs/browser_prefs.cc chrome/browser/prefs/browser_prefs.cc
index 7393b3400afe4..e19f464f67640 100644
index 9a00400829ae1..b0007362043bc 100644
--- chrome/browser/prefs/browser_prefs.cc
+++ chrome/browser/prefs/browser_prefs.cc
@@ -15,6 +15,7 @@
@ -571,7 +571,7 @@ index 7393b3400afe4..e19f464f67640 100644
#include "chrome/browser/about_flags.h"
#include "chrome/browser/accessibility/accessibility_labels_service.h"
#include "chrome/browser/accessibility/invert_bubble_prefs.h"
@@ -208,6 +209,10 @@
@@ -217,6 +218,10 @@
#include "extensions/browser/pref_names.h"
#endif // BUILDFLAG(ENABLE_EXTENSIONS_CORE)
@ -582,7 +582,7 @@ index 7393b3400afe4..e19f464f67640 100644
#if BUILDFLAG(ENABLE_EXTENSIONS)
#include "chrome/browser/accessibility/animation_policy_prefs.h"
#include "chrome/browser/apps/platform_apps/shortcut_manager.h"
@@ -1830,6 +1835,11 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
@@ -1856,6 +1861,11 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
// This is intentionally last.
RegisterLocalStatePrefsForMigration(registry);
@ -594,7 +594,7 @@ index 7393b3400afe4..e19f464f67640 100644
}
// Register prefs applicable to all profiles.
@@ -2271,6 +2281,10 @@ void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -2305,6 +2315,10 @@ void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
const std::string& locale) {
RegisterProfilePrefs(registry, locale);