Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(191)

Side by Side Diff: components/bookmarks/browser/bookmark_storage.cc

Issue 1394993004: Make ValueDeserializer::Deserialize return scoped_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix and add todo about not failed trybot Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/bookmarks/browser/bookmark_storage.h" 5 #include "components/bookmarks/browser/bookmark_storage.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 } 49 }
50 50
51 void LoadCallback(const base::FilePath& path, 51 void LoadCallback(const base::FilePath& path,
52 const base::WeakPtr<BookmarkStorage>& storage, 52 const base::WeakPtr<BookmarkStorage>& storage,
53 scoped_ptr<BookmarkLoadDetails> details, 53 scoped_ptr<BookmarkLoadDetails> details,
54 base::SequencedTaskRunner* task_runner) { 54 base::SequencedTaskRunner* task_runner) {
55 bool load_index = false; 55 bool load_index = false;
56 bool bookmark_file_exists = base::PathExists(path); 56 bool bookmark_file_exists = base::PathExists(path);
57 if (bookmark_file_exists) { 57 if (bookmark_file_exists) {
58 JSONFileValueDeserializer deserializer(path); 58 JSONFileValueDeserializer deserializer(path);
59 scoped_ptr<base::Value> root(deserializer.Deserialize(NULL, NULL)); 59 scoped_ptr<base::Value> root = deserializer.Deserialize(NULL, NULL);
60 60
61 if (root.get()) { 61 if (root.get()) {
62 // Building the index can take a while, so we do it on the background 62 // Building the index can take a while, so we do it on the background
63 // thread. 63 // thread.
64 int64 max_node_id = 0; 64 int64 max_node_id = 0;
65 BookmarkCodec codec; 65 BookmarkCodec codec;
66 TimeTicks start_time = TimeTicks::Now(); 66 TimeTicks start_time = TimeTicks::Now();
67 codec.Decode(details->bb_node(), details->other_folder_node(), 67 codec.Decode(details->bb_node(), details->other_folder_node(),
68 details->mobile_folder_node(), &max_node_id, *root.get()); 68 details->mobile_folder_node(), &max_node_id, *root.get());
69 details->set_max_id(std::max(max_node_id, details->max_id())); 69 details->set_max_id(std::max(max_node_id, details->max_id()));
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 } 225 }
226 226
227 scoped_ptr<std::string> data(new std::string); 227 scoped_ptr<std::string> data(new std::string);
228 if (!SerializeData(data.get())) 228 if (!SerializeData(data.get()))
229 return false; 229 return false;
230 writer_.WriteNow(data.Pass()); 230 writer_.WriteNow(data.Pass());
231 return true; 231 return true;
232 } 232 }
233 233
234 } // namespace bookmarks 234 } // namespace bookmarks
OLDNEW
« no previous file with comments | « components/bookmarks/browser/bookmark_codec_unittest.cc ('k') | components/json_schema/json_schema_validator_unittest_base.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698