Index: chrome/browser/extensions/api/settings_private/settings_private_delegate_factory.cc |
diff --git a/chrome/browser/extensions/api/settings_private/settings_private_delegate_factory.cc b/chrome/browser/extensions/api/settings_private/settings_private_delegate_factory.cc |
index fc56bc34f9f7ffda62157d955303fba4a289bcf4..e855cac044a6812ae77d36a2434b36c2694c53d9 100644 |
--- a/chrome/browser/extensions/api/settings_private/settings_private_delegate_factory.cc |
+++ b/chrome/browser/extensions/api/settings_private/settings_private_delegate_factory.cc |
@@ -6,6 +6,7 @@ |
#include "chrome/browser/browser_process.h" |
#include "chrome/browser/extensions/api/settings_private/settings_private_delegate.h" |
+#include "chrome/browser/profiles/incognito_helpers.h" |
#include "chrome/browser/profiles/profile.h" |
#include "components/keyed_service/content/browser_context_dependency_manager.h" |
#include "extensions/browser/extension_system_provider.h" |
@@ -35,6 +36,14 @@ SettingsPrivateDelegateFactory::SettingsPrivateDelegateFactory() |
SettingsPrivateDelegateFactory::~SettingsPrivateDelegateFactory() { |
} |
+content::BrowserContext* SettingsPrivateDelegateFactory::GetBrowserContextToUse( |
+ content::BrowserContext* context) const { |
+ // Use the incognito profile when in Guest mode. |
+ if (context->IsOffTheRecord()) |
+ return chrome::GetBrowserContextRedirectedInIncognito(context); |
+ return context; |
+} |
+ |
KeyedService* SettingsPrivateDelegateFactory::BuildServiceInstanceFor( |
content::BrowserContext* profile) const { |
return new SettingsPrivateDelegate(static_cast<Profile*>(profile)); |