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

Unified Diff: chrome/browser/safe_browsing/prefix_set.cc

Issue 7466003: MD5Update function uses StringPiece instead of raw buffer. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remove line from license. Created 9 years, 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/metrics/metrics_service.cc ('k') | chrome/browser/safe_browsing/prefix_set_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/safe_browsing/prefix_set.cc
diff --git a/chrome/browser/safe_browsing/prefix_set.cc b/chrome/browser/safe_browsing/prefix_set.cc
index 13890a0490c258d2d70e308e48610f72d742a24d..9d568cbbc64afaabdde2d40f2949095e76f0bf10 100644
--- a/chrome/browser/safe_browsing/prefix_set.cc
+++ b/chrome/browser/safe_browsing/prefix_set.cc
@@ -192,7 +192,8 @@ PrefixSet* PrefixSet::LoadFile(const FilePath& filter_name) {
// The file looks valid, start building the digest.
base::MD5Context context;
base::MD5Init(&context);
- base::MD5Update(&context, &header, sizeof(header));
+ base::MD5Update(&context, base::StringPiece(reinterpret_cast<char*>(&header),
+ sizeof(header)));
// Read the index vector. Herb Sutter indicates that vectors are
// guaranteed to be contiuguous, so reading to where element 0 lives
@@ -201,14 +202,18 @@ PrefixSet* PrefixSet::LoadFile(const FilePath& filter_name) {
read = fread(&(index[0]), sizeof(index[0]), index.size(), file.get());
if (read != index.size())
return NULL;
- base::MD5Update(&context, &(index[0]), index_bytes);
+ base::MD5Update(&context,
+ base::StringPiece(reinterpret_cast<char*>(&(index[0])),
+ index_bytes));
// Read vector of deltas.
deltas.resize(header.deltas_size);
read = fread(&(deltas[0]), sizeof(deltas[0]), deltas.size(), file.get());
if (read != deltas.size())
return NULL;
- base::MD5Update(&context, &(deltas[0]), deltas_bytes);
+ base::MD5Update(&context,
+ base::StringPiece(reinterpret_cast<char*>(&(deltas[0])),
+ deltas_bytes));
base::MD5Digest calculated_digest;
base::MD5Final(&calculated_digest, &context);
@@ -251,7 +256,8 @@ bool PrefixSet::WriteFile(const FilePath& filter_name) const {
size_t written = fwrite(&header, sizeof(header), 1, file.get());
if (written != 1)
return false;
- base::MD5Update(&context, &header, sizeof(header));
+ base::MD5Update(&context, base::StringPiece(reinterpret_cast<char*>(&header),
+ sizeof(header)));
// As for reads, the standard guarantees the ability to access the
// contents of the vector by a pointer to an element.
@@ -259,14 +265,19 @@ bool PrefixSet::WriteFile(const FilePath& filter_name) const {
written = fwrite(&(index_[0]), sizeof(index_[0]), index_.size(), file.get());
if (written != index_.size())
return false;
- base::MD5Update(&context, &(index_[0]), index_bytes);
+ base::MD5Update(&context,
+ base::StringPiece(reinterpret_cast<const char*>(&(index_[0])),
+ index_bytes));
const size_t deltas_bytes = sizeof(deltas_[0]) * deltas_.size();
written = fwrite(&(deltas_[0]), sizeof(deltas_[0]), deltas_.size(),
file.get());
if (written != deltas_.size())
return false;
- base::MD5Update(&context, &(deltas_[0]), deltas_bytes);
+ base::MD5Update(&context,
+ base::StringPiece(
+ reinterpret_cast<const char*>(&(deltas_[0])),
+ deltas_bytes));
base::MD5Digest digest;
base::MD5Final(&digest, &context);
« no previous file with comments | « chrome/browser/metrics/metrics_service.cc ('k') | chrome/browser/safe_browsing/prefix_set_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698