fix: move FirstPartySets into the browser process (#33998)

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3448551
This commit is contained in:
Keeley Hammond 2022-05-02 08:20:30 -07:00 committed by GitHub
parent 6f851afab5
commit 14f07d7814
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 6 deletions

View file

@ -25,6 +25,7 @@
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/child_process_security_policy.h"
#include "content/public/browser/device_service.h"
#include "content/public/browser/first_party_sets_handler.h"
#include "content/public/browser/web_ui_controller_factory.h"
#include "content/public/common/content_features.h"
#include "content/public/common/content_switches.h"
@ -416,6 +417,11 @@ int ElectronBrowserMainParts::PreMainMessageLoopRun() {
// url::Add*Scheme are not threadsafe, this helps prevent data races.
url::LockSchemeRegistries();
// The First-Party Sets feature always expects to be initialized
// CL: https://chromium-review.googlesource.com/c/chromium/src/+/3448551
content::FirstPartySetsHandler::GetInstance()->SetPublicFirstPartySets(
base::File());
#if BUILDFLAG(ENABLE_ELECTRON_EXTENSIONS)
extensions_client_ = std::make_unique<ElectronExtensionsClient>();
extensions::ExtensionsClient::Set(extensions_client_.get());

View file

@ -20,7 +20,6 @@
#include "components/os_crypt/os_crypt.h"
#include "components/prefs/pref_service.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/first_party_sets_handler.h"
#include "content/public/browser/network_service_instance.h"
#include "content/public/common/content_features.h"
#include "content/public/common/network_service_util.h"
@ -289,11 +288,6 @@ void SystemNetworkContextManager::OnNetworkServiceCreated(
base::FeatureList::IsEnabled(features::kAsyncDns),
default_secure_dns_mode, doh_config, additional_dns_query_types_enabled);
// Initializes first party sets component
// CL: https://chromium-review.googlesource.com/c/chromium/src/+/3449280
content::FirstPartySetsHandler::GetInstance()->SetPublicFirstPartySets(
base::File());
std::string app_name = electron::Browser::Get()->GetName();
#if BUILDFLAG(IS_MAC)
KeychainPassword::GetServiceName() = app_name + " Safe Storage";