147 lines
5.6 KiB
Diff
147 lines
5.6 KiB
Diff
diff --git chrome/browser/spellchecker/spellcheck_factory.cc chrome/browser/spellchecker/spellcheck_factory.cc
|
|
index 9f9eb3bdd044..63988fba828d 100644
|
|
--- chrome/browser/spellchecker/spellcheck_factory.cc
|
|
+++ chrome/browser/spellchecker/spellcheck_factory.cc
|
|
@@ -17,6 +17,13 @@
|
|
#include "content/public/browser/render_process_host.h"
|
|
#include "ui/base/l10n/l10n_util.h"
|
|
|
|
+namespace {
|
|
+
|
|
+static base::LazyInstance<SpellcheckServiceFactory>::Leaky
|
|
+ g_spellcheck_service_factory = LAZY_INSTANCE_INITIALIZER;
|
|
+
|
|
+} // namespace
|
|
+
|
|
// static
|
|
SpellcheckService* SpellcheckServiceFactory::GetForContext(
|
|
content::BrowserContext* context) {
|
|
@@ -39,7 +46,7 @@ SpellcheckService* SpellcheckServiceFactory::GetForRenderProcessId(
|
|
|
|
// static
|
|
SpellcheckServiceFactory* SpellcheckServiceFactory::GetInstance() {
|
|
- return base::Singleton<SpellcheckServiceFactory>::get();
|
|
+ return g_spellcheck_service_factory.Pointer();
|
|
}
|
|
|
|
SpellcheckServiceFactory::SpellcheckServiceFactory()
|
|
diff --git chrome/browser/spellchecker/spellcheck_factory.h chrome/browser/spellchecker/spellcheck_factory.h
|
|
index e8eb9f7e8aa6..2e1b7cf84081 100644
|
|
--- chrome/browser/spellchecker/spellcheck_factory.h
|
|
+++ chrome/browser/spellchecker/spellcheck_factory.h
|
|
@@ -7,7 +7,7 @@
|
|
|
|
#include "base/gtest_prod_util.h"
|
|
#include "base/macros.h"
|
|
-#include "base/memory/singleton.h"
|
|
+#include "base/lazy_instance.h"
|
|
#include "components/keyed_service/content/browser_context_keyed_service_factory.h"
|
|
|
|
class SpellcheckService;
|
|
@@ -26,7 +26,7 @@ class SpellcheckServiceFactory : public BrowserContextKeyedServiceFactory {
|
|
static SpellcheckServiceFactory* GetInstance();
|
|
|
|
private:
|
|
- friend struct base::DefaultSingletonTraits<SpellcheckServiceFactory>;
|
|
+ friend struct base::LazyInstanceTraitsBase<SpellcheckServiceFactory>;
|
|
|
|
SpellcheckServiceFactory();
|
|
~SpellcheckServiceFactory() override;
|
|
diff --git chrome/browser/supervised_user/supervised_user_settings_service_factory.cc chrome/browser/supervised_user/supervised_user_settings_service_factory.cc
|
|
index 173ac3132161..473e56161cca 100644
|
|
--- chrome/browser/supervised_user/supervised_user_settings_service_factory.cc
|
|
+++ chrome/browser/supervised_user/supervised_user_settings_service_factory.cc
|
|
@@ -9,6 +9,13 @@
|
|
#include "chrome/browser/supervised_user/supervised_user_settings_service.h"
|
|
#include "components/keyed_service/content/browser_context_dependency_manager.h"
|
|
|
|
+namespace {
|
|
+
|
|
+base::LazyInstance<SupervisedUserSettingsServiceFactory>::Leaky
|
|
+ g_service_factory = LAZY_INSTANCE_INITIALIZER;
|
|
+
|
|
+} // namespace
|
|
+
|
|
// static
|
|
SupervisedUserSettingsService*
|
|
SupervisedUserSettingsServiceFactory::GetForProfile(Profile* profile) {
|
|
@@ -19,7 +26,7 @@ SupervisedUserSettingsServiceFactory::GetForProfile(Profile* profile) {
|
|
// static
|
|
SupervisedUserSettingsServiceFactory*
|
|
SupervisedUserSettingsServiceFactory::GetInstance() {
|
|
- return base::Singleton<SupervisedUserSettingsServiceFactory>::get();
|
|
+ return g_service_factory.Pointer();
|
|
}
|
|
|
|
SupervisedUserSettingsServiceFactory::SupervisedUserSettingsServiceFactory()
|
|
diff --git chrome/browser/supervised_user/supervised_user_settings_service_factory.h chrome/browser/supervised_user/supervised_user_settings_service_factory.h
|
|
index 2907619549ba..f941fba363b5 100644
|
|
--- chrome/browser/supervised_user/supervised_user_settings_service_factory.h
|
|
+++ chrome/browser/supervised_user/supervised_user_settings_service_factory.h
|
|
@@ -5,7 +5,7 @@
|
|
#ifndef CHROME_BROWSER_SUPERVISED_USER_SUPERVISED_USER_SETTINGS_SERVICE_FACTORY_H_
|
|
#define CHROME_BROWSER_SUPERVISED_USER_SUPERVISED_USER_SETTINGS_SERVICE_FACTORY_H_
|
|
|
|
-#include "base/memory/singleton.h"
|
|
+#include "base/lazy_instance.h"
|
|
#include "chrome/browser/supervised_user/supervised_users.h"
|
|
#include "components/keyed_service/content/browser_context_keyed_service_factory.h"
|
|
|
|
@@ -20,7 +20,7 @@ class SupervisedUserSettingsServiceFactory
|
|
static SupervisedUserSettingsServiceFactory* GetInstance();
|
|
|
|
private:
|
|
- friend struct base::DefaultSingletonTraits<
|
|
+ friend struct base::LazyInstanceTraitsBase<
|
|
SupervisedUserSettingsServiceFactory>;
|
|
|
|
SupervisedUserSettingsServiceFactory();
|
|
diff --git chrome/browser/ui/prefs/prefs_tab_helper.cc chrome/browser/ui/prefs/prefs_tab_helper.cc
|
|
index 4d4fd0e7a4bb..e5bb39adc24e 100644
|
|
--- chrome/browser/ui/prefs/prefs_tab_helper.cc
|
|
+++ chrome/browser/ui/prefs/prefs_tab_helper.cc
|
|
@@ -11,8 +11,8 @@
|
|
#include <string>
|
|
|
|
#include "base/command_line.h"
|
|
+#include "base/lazy_instance.h"
|
|
#include "base/macros.h"
|
|
-#include "base/memory/singleton.h"
|
|
#include "base/strings/string_number_conversions.h"
|
|
#include "base/strings/string_util.h"
|
|
#include "base/strings/stringprintf.h"
|
|
@@ -432,12 +432,10 @@ class PrefWatcherFactory : public BrowserContextKeyedServiceFactory {
|
|
GetInstance()->GetServiceForBrowserContext(profile, true));
|
|
}
|
|
|
|
- static PrefWatcherFactory* GetInstance() {
|
|
- return base::Singleton<PrefWatcherFactory>::get();
|
|
- }
|
|
+ static PrefWatcherFactory* GetInstance();
|
|
|
|
private:
|
|
- friend struct base::DefaultSingletonTraits<PrefWatcherFactory>;
|
|
+ friend struct base::LazyInstanceTraitsBase<PrefWatcherFactory>;
|
|
|
|
PrefWatcherFactory() : BrowserContextKeyedServiceFactory(
|
|
"PrefWatcher",
|
|
@@ -458,6 +456,18 @@ class PrefWatcherFactory : public BrowserContextKeyedServiceFactory {
|
|
}
|
|
};
|
|
|
|
+namespace {
|
|
+
|
|
+base::LazyInstance<PrefWatcherFactory>::Leaky g_pref_watcher_factory =
|
|
+ LAZY_INSTANCE_INITIALIZER;
|
|
+
|
|
+} // namespace
|
|
+
|
|
+// static
|
|
+PrefWatcherFactory* PrefWatcherFactory::GetInstance() {
|
|
+ return g_pref_watcher_factory.Pointer();
|
|
+}
|
|
+
|
|
// static
|
|
PrefWatcher* PrefWatcher::Get(Profile* profile) {
|
|
return PrefWatcherFactory::GetForProfile(profile);
|