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

Side by Side Diff: components/safe_browsing_db/v4_database.cc

Issue 2233103002: Move full hash caching logic to v4_get_hash_protocol_manager (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove more tests from db_manager. Simplify another test. Created 4 years, 3 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 <memory> 5 #include <memory>
6 6
7 #include "base/callback.h" 7 #include "base/callback.h"
8 #include "base/debug/leak_annotations.h" 8 #include "base/debug/leak_annotations.h"
9 #include "base/files/file_util.h" 9 #include "base/files/file_util.h"
10 #include "base/memory/ptr_util.h" 10 #include "base/memory/ptr_util.h"
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
164 base::MakeUnique<StoreStateMap>(); 164 base::MakeUnique<StoreStateMap>();
165 for (const auto& store_map_iter : *store_map_) { 165 for (const auto& store_map_iter : *store_map_) {
166 (*store_state_map)[store_map_iter.first] = store_map_iter.second->state(); 166 (*store_state_map)[store_map_iter.first] = store_map_iter.second->state();
167 } 167 }
168 return store_state_map; 168 return store_state_map;
169 } 169 }
170 170
171 void V4Database::GetStoresMatchingFullHash( 171 void V4Database::GetStoresMatchingFullHash(
172 const FullHash& full_hash, 172 const FullHash& full_hash,
173 const base::hash_set<UpdateListIdentifier>& stores_to_look, 173 const base::hash_set<UpdateListIdentifier>& stores_to_look,
174 MatchedHashPrefixMap* matched_hash_prefix_map) { 174 StoreAndHashPrefixes* matched_store_and_hash_prefixes) {
175 DCHECK(matched_store_and_hash_prefixes);
Nathan Parker 2016/09/09 21:26:20 nit: You don't need the DCHECK if you're accessing
vakh (use Gerrit instead) 2016/09/09 23:25:17 Done.
176 matched_store_and_hash_prefixes->clear();
175 for (const UpdateListIdentifier& identifier : stores_to_look) { 177 for (const UpdateListIdentifier& identifier : stores_to_look) {
176 const auto& store_pair = store_map_->find(identifier); 178 const auto& store_pair = store_map_->find(identifier);
177 DCHECK(store_pair != store_map_->end()); 179 DCHECK(store_pair != store_map_->end());
178 const std::unique_ptr<V4Store>& store = store_pair->second; 180 const std::unique_ptr<V4Store>& store = store_pair->second;
179 HashPrefix hash_prefix = store->GetMatchingHashPrefix(full_hash); 181 HashPrefix hash_prefix = store->GetMatchingHashPrefix(full_hash);
180 if (!hash_prefix.empty()) { 182 if (!hash_prefix.empty()) {
181 (*matched_hash_prefix_map)[identifier] = hash_prefix; 183 matched_store_and_hash_prefixes->push_back(
Nathan Parker 2016/09/09 21:26:20 nit: Does this work: ->emplace_back(identifier, h
vakh (use Gerrit instead) 2016/09/09 23:25:17 Done.
184 StoreAndHashPrefix(identifier, hash_prefix));
182 } 185 }
183 } 186 }
184 } 187 }
185 188
186 } // namespace safe_browsing 189 } // namespace safe_browsing
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698