diff options
author | mgiuca@chromium.org <mgiuca@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-06 05:56:59 +0000 |
---|---|---|
committer | mgiuca@chromium.org <mgiuca@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-06 05:56:59 +0000 |
commit | f1f523f9f9407548b360bb525fc41f4a875c6854 (patch) | |
tree | b2cab568c07528518c0f288c71e2b2ad957b386e /base/hash.h | |
parent | 855782ce90f8c141f6b9272aa1f9987237804e40 (diff) | |
download | chromium_src-f1f523f9f9407548b360bb525fc41f4a875c6854.zip chromium_src-f1f523f9f9407548b360bb525fc41f4a875c6854.tar.gz chromium_src-f1f523f9f9407548b360bb525fc41f4a875c6854.tar.bz2 |
base::Hash: Minor improvements to documentation and testing.
Renamed the char* argument to 'data' and the string argument to 'str'.
Cleaned up the comments on the char* overload (avoid using
string-specific terms and mentioning null byte). Mentioned that this
algorithm is also in Blink.
Added a test case testing that null bytes cause the hash to change.
BUG=347393
Review URL: https://codereview.chromium.org/182253007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@255269 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/hash.h')
-rw-r--r-- | base/hash.h | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/base/hash.h b/base/hash.h index 0b9c9f6..e46f6ac 100644 --- a/base/hash.h +++ b/base/hash.h @@ -17,21 +17,20 @@ namespace base { // WARNING: This hash function should not be used for any cryptographic purpose. BASE_EXPORT uint32 SuperFastHash(const char* data, int len); -// Computes the hash of a string |key| of a given |length|. |key| does not need -// to be null-terminated, and may contain null bytes. +// Computes a hash of a memory buffer |data| of a given |length|. // WARNING: This hash function should not be used for any cryptographic purpose. -inline uint32 Hash(const char* key, size_t length) { +inline uint32 Hash(const char* data, size_t length) { if (length > static_cast<size_t>(std::numeric_limits<int>::max())) { NOTREACHED(); return 0; } - return SuperFastHash(key, static_cast<int>(length)); + return SuperFastHash(data, static_cast<int>(length)); } -// Computes the hash of a string |key|. +// Computes a hash of a string |str|. // WARNING: This hash function should not be used for any cryptographic purpose. -inline uint32 Hash(const std::string& key) { - return Hash(key.data(), key.size()); +inline uint32 Hash(const std::string& str) { + return Hash(str.data(), str.size()); } } // namespace base |