diff options
author | munjal@chromium.org <munjal@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-13 23:27:13 +0000 |
---|---|---|
committer | munjal@chromium.org <munjal@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-13 23:27:13 +0000 |
commit | 367d707fa4f9a6712ccb7035c530da5788a4f5a2 (patch) | |
tree | 676c59f1f4eec2145a59fcb36c8894afab10042c /chrome/browser/bookmarks/bookmark_storage.cc | |
parent | d8241d65b71b1409c9f6581b9ceee68f9bf35c3e (diff) | |
download | chromium_src-367d707fa4f9a6712ccb7035c530da5788a4f5a2.zip chromium_src-367d707fa4f9a6712ccb7035c530da5788a4f5a2.tar.gz chromium_src-367d707fa4f9a6712ccb7035c530da5788a4f5a2.tar.bz2 |
Try the original CL "Always persist bookmark IDs" again with the fix to
Valgrind issue. The fix is in bookmark_storage.h - initialized the newly
added member ids_reassigned_ of LoadDetails class.
See http://codereview.chromium.org/149310 for the original CL.
TEST=NONE
BUG=16068
Review URL: http://codereview.chromium.org/155456
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20565 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/bookmarks/bookmark_storage.cc')
-rw-r--r-- | chrome/browser/bookmarks/bookmark_storage.cc | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/chrome/browser/bookmarks/bookmark_storage.cc b/chrome/browser/bookmarks/bookmark_storage.cc index a530158..d7dbe19 100644 --- a/chrome/browser/bookmarks/bookmark_storage.cc +++ b/chrome/browser/bookmarks/bookmark_storage.cc @@ -68,13 +68,11 @@ class BookmarkStorage::LoadTask : public Task { LoadTask(const FilePath& path, MessageLoop* loop, BookmarkStorage* storage, - LoadDetails* details, - bool persist_ids) + LoadDetails* details) : path_(path), loop_(loop), storage_(storage), - details_(details), - persist_ids_(persist_ids) { + details_(details) { } virtual void Run() { @@ -86,14 +84,15 @@ class BookmarkStorage::LoadTask : public Task { if (root.get()) { // Building the index cane take a while, so we do it on the background // thread. - int max_node_id = 0; - BookmarkCodec codec(persist_ids_); + int64 max_node_id = 0; + BookmarkCodec codec; TimeTicks start_time = TimeTicks::Now(); codec.Decode(details_->bb_node(), details_->other_folder_node(), &max_node_id, *root.get()); details_->set_max_id(std::max(max_node_id, details_->max_id())); details_->set_computed_checksum(codec.computed_checksum()); details_->set_stored_checksum(codec.stored_checksum()); + details_->set_ids_reassigned(codec.ids_reassigned()); UMA_HISTOGRAM_TIMES("Bookmarks.DecodeTime", TimeTicks::Now() - start_time); @@ -129,7 +128,6 @@ class BookmarkStorage::LoadTask : public Task { MessageLoop* loop_; scoped_refptr<BookmarkStorage> storage_; LoadDetails* details_; - bool persist_ids_; DISALLOW_COPY_AND_ASSIGN(LoadTask); }; @@ -164,8 +162,7 @@ void BookmarkStorage::DoLoadBookmarks(const FilePath& path) { Task* task = new LoadTask(path, backend_thread() ? MessageLoop::current() : NULL, this, - details_.get(), - model_->PersistIDs()); + details_.get()); RunTaskOnBackendThread(task); } @@ -211,7 +208,7 @@ void BookmarkStorage::BookmarkModelDeleted() { } bool BookmarkStorage::SerializeData(std::string* output) { - BookmarkCodec codec(model_->PersistIDs()); + BookmarkCodec codec; scoped_ptr<Value> value(codec.Encode(model_)); JSONStringValueSerializer serializer(output); serializer.set_pretty_print(true); |