Fix MurmurHash implementation to really be unaligned (#7482)

This commit is contained in:
sfan5 2018-06-26 01:12:09 +02:00 committed by Loïc Blot
parent 971dea7efd
commit 2e85254e91
1 changed files with 3 additions and 3 deletions

View File

@ -60,13 +60,13 @@ u64 murmur_hash_64_ua(const void *key, int len, unsigned int seed)
const int r = 47;
u64 h = seed ^ (len * m);
const u64 *data = (const u64 *)key;
const u64 *end = data + (len / 8);
const u8 *data = (const u8 *)key;
const u8 *end = data + (len / 8) * 8;
while (data != end) {
u64 k;
memcpy(&k, data, sizeof(u64));
data++;
data += sizeof(u64);
k *= m;
k ^= k >> r;