diff --git a/browser/brave_content_browser_client.cc b/browser/brave_content_browser_client.cc index 56a9261f0074..968bac102f10 100644 --- a/browser/brave_content_browser_client.cc +++ b/browser/brave_content_browser_client.cc @@ -348,3 +348,35 @@ GURL BraveContentBrowserClient::GetEffectiveURL( return url; #endif } + +std::string BraveContentBrowserClient::GetStoragePartitionIdForSite( + content::BrowserContext* browser_context, + const GURL& site) { + std::string partition_id = + ChromeContentBrowserClient::GetStoragePartitionIdForSite( + browser_context, site); + if (browser_context->IsTorProfile()) { + partition_id = site.spec(); + } + DCHECK(IsValidStoragePartitionId(browser_context, partition_id)); + return partition_id; +} + +void BraveContentBrowserClient::GetStoragePartitionConfigForSite( + content::BrowserContext* browser_context, + const GURL& site, + bool can_be_default, + std::string* partition_domain, + std::string* partition_name, + bool* in_memory) { + ChromeContentBrowserClient::GetStoragePartitionConfigForSite( + browser_context, site, can_be_default, partition_domain, partition_name, + in_memory); + if (browser_context->IsTorProfile()) { + if (!site.is_empty()) { + *partition_domain = site.host(); + *partition_name = "tor"; + } + *in_memory = true; + } +} diff --git a/browser/brave_content_browser_client.h b/browser/brave_content_browser_client.h index d2542ba1e59a..e840471738ec 100644 --- a/browser/brave_content_browser_client.h +++ b/browser/brave_content_browser_client.h @@ -80,6 +80,17 @@ class BraveContentBrowserClient : public ChromeContentBrowserClient { GURL GetEffectiveURL(content::BrowserContext* browser_context, const GURL& url) override; + std::string GetStoragePartitionIdForSite( + content::BrowserContext* browser_context, + const GURL& site) override; + void GetStoragePartitionConfigForSite( + content::BrowserContext* browser_context, + const GURL& site, + bool can_be_default, + std::string* partition_domain, + std::string* partition_name, + bool* in_memory) override; + private: bool AllowAccessCookie(const GURL& url, const GURL& first_party, content::ResourceContext* context, int render_process_id,