Index: chrome/browser/sync/glue/bookmark_model_associator.cc |
diff --git a/chrome/browser/sync/glue/bookmark_model_associator.cc b/chrome/browser/sync/glue/bookmark_model_associator.cc |
index 04fcb6ea724f7b0aed6d99e7df0db0f35f8b05a0..09602b6030d9b1149d469178c7d869e5214d4f13 100644 |
--- a/chrome/browser/sync/glue/bookmark_model_associator.cc |
+++ b/chrome/browser/sync/glue/bookmark_model_associator.cc |
@@ -331,20 +331,17 @@ bool BookmarkModelAssociator::NodesMatch( |
return true; |
} |
-syncer::SyncError BookmarkModelAssociator::AssociateTaggedPermanentNode( |
+bool BookmarkModelAssociator::AssociateTaggedPermanentNode( |
const BookmarkNode* permanent_node, const std::string&tag) { |
// Do nothing if |permanent_node| is already initialized and associated. |
int64 sync_id = GetSyncIdFromChromeId(permanent_node->id()); |
if (sync_id != syncer::kInvalidId) |
- return syncer::SyncError(); |
+ return true; |
if (!GetSyncIdForTaggedNode(tag, &sync_id)) |
- return unrecoverable_error_handler_->CreateAndUploadError( |
- FROM_HERE, |
- "Permanent node not found", |
- model_type()); |
+ return false; |
Associate(permanent_node, sync_id); |
- return syncer::SyncError(); |
+ return true; |
} |
bool BookmarkModelAssociator::GetSyncIdForTaggedNode(const std::string& tag, |
@@ -395,20 +392,30 @@ syncer::SyncError BookmarkModelAssociator::BuildAssociations() { |
// To prime our association, we associate the top-level nodes, Bookmark Bar |
// and Other Bookmarks. |
- error = AssociateTaggedPermanentNode(bookmark_model_->other_node(), |
- kOtherBookmarksTag); |
- if (error.IsSet()) |
- return error; |
- |
- error = AssociateTaggedPermanentNode(bookmark_model_->bookmark_bar_node(), |
- kBookmarkBarTag); |
- if (error.IsSet()) |
- return error; |
- |
- error = AssociateTaggedPermanentNode(bookmark_model_->mobile_node(), |
- kMobileBookmarksTag); |
- if (error.IsSet() && expect_mobile_bookmarks_folder_) |
- return error; |
+ if (!AssociateTaggedPermanentNode(bookmark_model_->other_node(), |
+ kOtherBookmarksTag)) { |
+ return unrecoverable_error_handler_->CreateAndUploadError( |
+ FROM_HERE, |
+ "Other bookmarks node not found", |
+ model_type()); |
+ } |
+ |
+ if (!AssociateTaggedPermanentNode(bookmark_model_->bookmark_bar_node(), |
+ kBookmarkBarTag)) { |
+ return unrecoverable_error_handler_->CreateAndUploadError( |
+ FROM_HERE, |
+ "Bookmark bar node not found", |
+ model_type()); |
+ } |
+ |
+ if (!AssociateTaggedPermanentNode(bookmark_model_->mobile_node(), |
+ kMobileBookmarksTag) && |
+ expect_mobile_bookmarks_folder_) { |
+ return unrecoverable_error_handler_->CreateAndUploadError( |
+ FROM_HERE, |
+ "Mobile bookmarks node not found", |
+ model_type()); |
+ } |
error = syncer::SyncError(); |
tim (not reviewing)
2012/08/13 20:04:36
Remove
|
int64 bookmark_bar_sync_id = GetSyncIdFromChromeId( |