| Index: components/sync_preferences/pref_service_syncable_factory.cc
|
| diff --git a/components/sync_preferences/pref_service_syncable_factory.cc b/components/sync_preferences/pref_service_syncable_factory.cc
|
| index 9e5989aa0a25a3ab6c66017eed0e5127e28669f4..ba3f40fd7b86273383395b1aef9cc5e0c9176725 100644
|
| --- a/components/sync_preferences/pref_service_syncable_factory.cc
|
| +++ b/components/sync_preferences/pref_service_syncable_factory.cc
|
| @@ -11,6 +11,7 @@
|
| #include "components/prefs/pref_notifier_impl.h"
|
| #include "components/prefs/pref_value_store.h"
|
| #include "components/sync_preferences/pref_service_syncable.h"
|
| +#include "services/preferences/public/cpp/persistent_pref_store_client.h"
|
| #include "services/preferences/public/cpp/pref_store_adapter.h"
|
| #include "services/preferences/public/interfaces/preferences.mojom.h"
|
| #include "services/service_manager/public/cpp/connector.h"
|
| @@ -83,6 +84,14 @@ std::unique_ptr<PrefServiceSyncable> PrefServiceSyncableFactory::CreateSyncable(
|
| TRACE_EVENT0("browser", "PrefServiceSyncableFactory::CreateSyncable");
|
| PrefNotifierImpl* pref_notifier = new PrefNotifierImpl();
|
|
|
| + if (!user_prefs_) {
|
| + prefs::mojom::PrefStoreConnectorPtr pref_connector;
|
| + connector->BindInterface(prefs::mojom::kPrefStoreServiceName,
|
| + &pref_connector);
|
| + user_prefs_ = new prefs::PersistentPrefStoreClient(
|
| + std::move(pref_connector), make_scoped_refptr(pref_registry));
|
| + }
|
| +
|
| // Expose all read-only stores through the prefs service.
|
| auto managed = CreateRegisteredPrefStore(connector, managed_prefs_,
|
| PrefValueStore::MANAGED_STORE);
|
|
|