Index: sync/engine/syncer.cc |
diff --git a/sync/engine/syncer.cc b/sync/engine/syncer.cc |
index 78178c5ac21f5b24424c5162dabd656703f0386e..2b38501a7477cf395491751c7e25761484664f0c 100644 |
--- a/sync/engine/syncer.cc |
+++ b/sync/engine/syncer.cc |
@@ -83,7 +83,7 @@ void Syncer::RequestEarlyExit() { |
early_exit_requested_ = true; |
} |
-void Syncer::SyncShare(sessions::SyncSession* session, |
+bool Syncer::SyncShare(sessions::SyncSession* session, |
SyncerStep first_step, |
SyncerStep last_step) { |
ScopedSessionContextConflictResolver scoped(session->context(), |
@@ -179,17 +179,16 @@ void Syncer::SyncShare(sessions::SyncSession* session, |
} |
default: |
LOG(ERROR) << "Unknown command: " << current_step; |
- } |
+ } // switch |
DVLOG(2) << "last step: " << SyncerStepToString(last_step) << ", " |
<< "current step: " << SyncerStepToString(current_step) << ", " |
<< "next step: " << SyncerStepToString(next_step) << ", " |
<< "snapshot: " << session->TakeSnapshot().ToString(); |
- if (last_step == current_step) { |
- session->SetFinished(); |
- break; |
- } |
+ if (last_step == current_step) |
+ return true; |
current_step = next_step; |
- } |
+ } // while |
+ return false; |
} |
void CopyServerFields(syncable::Entry* src, syncable::MutableEntry* dest) { |