| Index: components/sync/engine_impl/sync_manager_impl.cc
|
| diff --git a/components/sync/engine_impl/sync_manager_impl.cc b/components/sync/engine_impl/sync_manager_impl.cc
|
| index a41eb56c52c8aca3b7b0b6fd361542b1d83c51ff..87dd222786c1186e8ecd65d997c3fad961a6ca64 100644
|
| --- a/components/sync/engine_impl/sync_manager_impl.cc
|
| +++ b/components/sync/engine_impl/sync_manager_impl.cc
|
| @@ -184,9 +184,6 @@ ModelTypeSet SyncManagerImpl::GetTypesWithEmptyProgressMarkerToken(
|
| void SyncManagerImpl::ConfigureSyncer(
|
| ConfigureReason reason,
|
| ModelTypeSet to_download,
|
| - ModelTypeSet to_purge,
|
| - ModelTypeSet to_journal,
|
| - ModelTypeSet to_unapply,
|
| const ModelSafeRoutingInfo& new_routing_info,
|
| const base::Closure& ready_task,
|
| const base::Closure& retry_task) {
|
| @@ -203,19 +200,7 @@ void SyncManagerImpl::ConfigureSyncer(
|
| << "current types: "
|
| << ModelTypeSetToString(GetRoutingInfoTypes(new_routing_info))
|
| << "\n\t"
|
| - << "types to download: " << ModelTypeSetToString(to_download)
|
| - << "\n\t"
|
| - << "types to purge: " << ModelTypeSetToString(to_purge) << "\n\t"
|
| - << "types to journal: " << ModelTypeSetToString(to_journal) << "\n\t"
|
| - << "types to unapply: " << ModelTypeSetToString(to_unapply);
|
| - if (!PurgeDisabledTypes(to_purge, to_journal, to_unapply)) {
|
| - // We failed to cleanup the types. Invoke the ready task without actually
|
| - // configuring any types. The caller should detect this as a configuration
|
| - // failure and act appropriately.
|
| - ready_task.Run();
|
| - return;
|
| - }
|
| -
|
| + << "types to download: " << ModelTypeSetToString(to_download);
|
| ConfigurationParams params(GetSourceFromReason(reason), to_download,
|
| new_routing_info, ready_task, retry_task);
|
|
|
| @@ -460,13 +445,11 @@ bool SyncManagerImpl::OpenDirectory(const std::string& username) {
|
| // trigger the migration logic before the backend is initialized, resulting
|
| // in crashes. We therefore detect and purge any partially synced types as
|
| // part of initialization.
|
| - if (!PurgePartiallySyncedTypes())
|
| - return false;
|
| -
|
| + PurgePartiallySyncedTypes();
|
| return true;
|
| }
|
|
|
| -bool SyncManagerImpl::PurgePartiallySyncedTypes() {
|
| +void SyncManagerImpl::PurgePartiallySyncedTypes() {
|
| ModelTypeSet partially_synced_types = ModelTypeSet::All();
|
| partially_synced_types.RemoveAll(directory()->InitialSyncEndedTypes());
|
| partially_synced_types.RemoveAll(
|
| @@ -476,21 +459,22 @@ bool SyncManagerImpl::PurgePartiallySyncedTypes() {
|
| << ModelTypeSetToString(partially_synced_types);
|
| UMA_HISTOGRAM_COUNTS("Sync.PartiallySyncedTypes",
|
| partially_synced_types.Size());
|
| - if (partially_synced_types.Empty())
|
| - return true;
|
| - return directory()->PurgeEntriesWithTypeIn(partially_synced_types,
|
| - ModelTypeSet(), ModelTypeSet());
|
| + directory()->PurgeEntriesWithTypeIn(partially_synced_types, ModelTypeSet(),
|
| + ModelTypeSet());
|
| }
|
|
|
| -bool SyncManagerImpl::PurgeDisabledTypes(ModelTypeSet to_purge,
|
| +void SyncManagerImpl::PurgeDisabledTypes(ModelTypeSet to_purge,
|
| ModelTypeSet to_journal,
|
| ModelTypeSet to_unapply) {
|
| - if (to_purge.Empty())
|
| - return true;
|
| - DVLOG(1) << "Purging disabled types " << ModelTypeSetToString(to_purge);
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| + DCHECK(initialized_);
|
| + DVLOG(1) << "Purging disabled types:\n\t"
|
| + << "types to purge: " << ModelTypeSetToString(to_purge) << "\n\t"
|
| + << "types to journal: " << ModelTypeSetToString(to_journal) << "\n\t"
|
| + << "types to unapply: " << ModelTypeSetToString(to_unapply);
|
| DCHECK(to_purge.HasAll(to_journal));
|
| DCHECK(to_purge.HasAll(to_unapply));
|
| - return directory()->PurgeEntriesWithTypeIn(to_purge, to_journal, to_unapply);
|
| + directory()->PurgeEntriesWithTypeIn(to_purge, to_journal, to_unapply);
|
| }
|
|
|
| void SyncManagerImpl::UpdateCredentials(const SyncCredentials& credentials) {
|
|
|