Chromium Code Reviews| Index: chrome/browser/sync/glue/sync_backend_host.cc |
| diff --git a/chrome/browser/sync/glue/sync_backend_host.cc b/chrome/browser/sync/glue/sync_backend_host.cc |
| index 4c8b2c1a7b7ce0eb0dab225b7e14e808211af9de..3f41a806dedf64eaf6180103c0e3a2833b842e8a 100644 |
| --- a/chrome/browser/sync/glue/sync_backend_host.cc |
| +++ b/chrome/browser/sync/glue/sync_backend_host.cc |
| @@ -727,9 +727,14 @@ void SyncBackendHost::ConfigureDataTypes( |
| GetDataTypesInState(CRYPTO, config_state_map); |
| disabled_types.PutAll(fatal_types); |
| disabled_types.PutAll(crypto_types); |
| + syncer::ModelTypeSet active_types = |
| + GetDataTypesInState(CONFIGURE_ACTIVE, config_state_map); |
| + syncer::ModelTypeSet clean_first_types = |
| + GetDataTypesInState(CONFIGURE_CLEAN, config_state_map); |
| syncer::ModelTypeSet types_to_download = registrar_->ConfigureDataTypes( |
| - GetDataTypesInState(CONFIGURE_ACTIVE, config_state_map), |
| + syncer::Union(active_types, clean_first_types), |
| disabled_types); |
| + types_to_download.PutAll(clean_first_types); |
|
tim (not reviewing)
2013/07/01 21:10:18
In what cases does the registrar decide to remove
Nicolas Zea
2013/07/01 23:27:45
I'm not sure I understand the question? The regist
tim (not reviewing)
2013/07/02 18:54:18
I guess it wasn't clear what was happening with cl
|
| types_to_download.RemoveAll(syncer::ProxyTypes()); |
| if (!types_to_download.Empty()) |
| types_to_download.Put(syncer::NIGORI); |
| @@ -789,7 +794,7 @@ void SyncBackendHost::ConfigureDataTypes( |
| types_to_download, |
| types_to_purge, |
| fatal_types, |
| - crypto_types, |
| + syncer::Union(crypto_types, clean_first_types), |
| inactive_types, |
| routing_info, |
| ready_task, |