Chromium Code Reviews| Index: chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| diff --git a/chrome/browser/sync_file_system/drive_backend/metadata_database.cc b/chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| index 9ce1a68be8b052156344fdcd9d4c3ac5dcdba8c4..5677161069ec2946ff1c005a48511dbeb911417d 100644 |
| --- a/chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| +++ b/chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| @@ -1033,17 +1033,20 @@ MetadataDatabase::ActivationStatus MetadataDatabase::TryNoSideEffectActivation( |
| DCHECK(tracker); |
| - if (!tracker->active()) { |
| - if (same_file_id.has_active()) |
| - return ACTIVATION_FAILED_ANOTHER_ACTIVE_TRACKER; |
| + if (!tracker->active() && same_file_id.has_active()) |
| + return ACTIVATION_FAILED_ANOTHER_ACTIVE_TRACKER; |
| + |
| + scoped_ptr<leveldb::WriteBatch> batch(new leveldb::WriteBatch); |
| + if (!tracker->active()) { |
| TrackerSet same_title; |
| FindTrackersByParentAndTitle(parent_tracker_id, title, &same_title); |
| - if (same_title.has_active()) |
| - return ACTIVATION_FAILED_SAME_PATH_TRACKER; |
| + if (same_title.has_active()) { |
|
kinuko
2014/02/06 09:48:01
Does it make sense to have some comment here? It's
tzik
2014/02/07 04:43:53
Added some comment around here.
|
| + MakeTrackerInactive(same_title.active_tracker()->tracker_id(), |
| + batch.get()); |
| + } |
| } |
| - scoped_ptr<leveldb::WriteBatch> batch(new leveldb::WriteBatch); |
| if (!tracker->has_synced_details() || |
| tracker->synced_details().title() != title) { |
| trackers_by_parent_and_title_[parent_tracker_id] |