Index: chrome/browser/sync/profile_sync_service.cc |
diff --git a/chrome/browser/sync/profile_sync_service.cc b/chrome/browser/sync/profile_sync_service.cc |
index 32e563aafc0ce7753b4e7f9f7a929301429335c1..37ebcafe9c5634bc5f516724d66613fdad1215f8 100644 |
--- a/chrome/browser/sync/profile_sync_service.cc |
+++ b/chrome/browser/sync/profile_sync_service.cc |
@@ -1811,6 +1811,8 @@ void ProfileSyncService::RefreshSpareBootstrapToken( |
void ProfileSyncService::OnUserChoseDatatypes( |
bool sync_everything, |
syncer::ModelTypeSet chosen_types) { |
+ DCHECK(syncer::UserSelectableTypes().HasAll(chosen_types)); |
+ |
if (!backend_.get() && !HasUnrecoverableError()) { |
NOTREACHED(); |
return; |
@@ -1848,7 +1850,8 @@ syncer::ModelTypeSet ProfileSyncService::GetActiveDataTypes() const { |
syncer::ModelTypeSet ProfileSyncService::GetPreferredDataTypes() const { |
const syncer::ModelTypeSet registered_types = GetRegisteredDataTypes(); |
const syncer::ModelTypeSet preferred_types = |
- sync_prefs_.GetPreferredDataTypes(registered_types); |
+ Union(sync_prefs_.GetPreferredDataTypes(registered_types), |
+ syncer::ControlTypes()); |
const syncer::ModelTypeSet enforced_types = |
Intersection(GetDataTypesFromPreferenceProviders(), registered_types); |
return Union(preferred_types, enforced_types); |