Index: sync/engine/entity_tracker.cc |
diff --git a/sync/engine/entity_tracker.cc b/sync/engine/entity_tracker.cc |
index bad76f9932575f43300e7ea74cea38e9e3d4b6df..0f10906ab15c67fc253b0e24c2115d650c0ef4b0 100644 |
--- a/sync/engine/entity_tracker.cc |
+++ b/sync/engine/entity_tracker.cc |
@@ -193,14 +193,8 @@ |
} |
void EntityTracker::ReceiveUpdate(int64 version) { |
- if (version <= highest_gu_response_version_) |
- return; |
- |
- highest_gu_response_version_ = version; |
- |
- // Got an applicable update newer than any pending updates. It must be safe |
- // to discard the old pending update, if there was one. |
- ClearPendingUpdate(); |
+ highest_gu_response_version_ = |
+ std::max(highest_gu_response_version_, version); |
if (IsInConflict()) { |
// Incoming update clobbers the pending commit on the sync thread. |
@@ -209,34 +203,9 @@ |
} |
} |
-bool EntityTracker::ReceivePendingUpdate(const UpdateResponseData& data) { |
- if (data.response_version < highest_gu_response_version_) |
- return false; |
- |
- highest_gu_response_version_ = data.response_version; |
- pending_update_.reset(new UpdateResponseData(data)); |
- ClearPendingCommit(); |
- return true; |
-} |
- |
-bool EntityTracker::HasPendingUpdate() const { |
- return !!pending_update_; |
-} |
- |
-UpdateResponseData EntityTracker::GetPendingUpdate() const { |
- return *pending_update_; |
-} |
- |
-void EntityTracker::ClearPendingUpdate() { |
- pending_update_.reset(); |
-} |
- |
bool EntityTracker::IsInConflict() const { |
if (!is_commit_pending_) |
return false; |
- |
- if (HasPendingUpdate()) |
- return true; |
if (highest_gu_response_version_ <= highest_commit_response_version_) { |
// The most recent server state was created in a commit made by this |