Index: chrome/browser/sync_file_system/drive_backend/metadata_database_index.cc |
diff --git a/chrome/browser/sync_file_system/drive_backend/metadata_database_index.cc b/chrome/browser/sync_file_system/drive_backend/metadata_database_index.cc |
index d8a43ec45b6f6a8c2d5ad497ef871c025045ad71..4e0c10bcf4f189388c51eff9aa781190aae99be7 100644 |
--- a/chrome/browser/sync_file_system/drive_backend/metadata_database_index.cc |
+++ b/chrome/browser/sync_file_system/drive_backend/metadata_database_index.cc |
@@ -400,10 +400,17 @@ bool MetadataDatabaseIndex::HasDemotedDirtyTracker() const { |
return !demoted_dirty_trackers_.empty(); |
} |
-void MetadataDatabaseIndex::PromoteDemotedDirtyTrackers() { |
+void MetadataDatabaseIndex::PromoteDemotedDirtyTracker(int64 tracker_id) { |
+ if (demoted_dirty_trackers_.erase(tracker_id) == 1) |
+ dirty_trackers_.insert(tracker_id); |
+} |
+ |
+bool MetadataDatabaseIndex::PromoteDemotedDirtyTrackers() { |
+ bool promoted = !demoted_dirty_trackers_.empty(); |
dirty_trackers_.insert(demoted_dirty_trackers_.begin(), |
demoted_dirty_trackers_.end()); |
demoted_dirty_trackers_.clear(); |
+ return promoted; |
} |
size_t MetadataDatabaseIndex::CountDirtyTracker() const { |