Index: sync/engine/syncer.cc |
diff --git a/sync/engine/syncer.cc b/sync/engine/syncer.cc |
index 3d66ca30fa954d094d07579624dd983e51903d1d..3fa9a28dc5a7f5a9ad69a19db4c86e880929fe28 100644 |
--- a/sync/engine/syncer.cc |
+++ b/sync/engine/syncer.cc |
@@ -19,6 +19,7 @@ |
#include "sync/engine/net/server_connection_manager.h" |
#include "sync/engine/process_commit_response_command.h" |
#include "sync/engine/syncer_types.h" |
+#include "sync/internal_api/public/base/cancelation_signal.h" |
#include "sync/internal_api/public/base/unique_position.h" |
#include "sync/internal_api/public/util/syncer_error.h" |
#include "sync/sessions/nudge_tracker.h" |
@@ -43,20 +44,14 @@ using sessions::StatusController; |
using sessions::SyncSession; |
using sessions::NudgeTracker; |
-Syncer::Syncer() |
- : early_exit_requested_(false) { |
+Syncer::Syncer(syncer::CancelationSignal* cancelation_signal) |
+ : cancelation_signal_(cancelation_signal) { |
} |
Syncer::~Syncer() {} |
bool Syncer::ExitRequested() { |
- base::AutoLock lock(early_exit_requested_lock_); |
- return early_exit_requested_; |
-} |
- |
-void Syncer::RequestEarlyExit() { |
- base::AutoLock lock(early_exit_requested_lock_); |
- early_exit_requested_ = true; |
+ return cancelation_signal_->IsStopRequested(); |
} |
bool Syncer::NormalSyncShare(ModelTypeSet request_types, |