]> git.seodisparate.com - SimpleArchiver/commitdiff
Fix hashing in hash_map
authorStephen Seo <seo.disparate@gmail.com>
Fri, 28 Jun 2024 09:15:40 +0000 (18:15 +0900)
committerStephen Seo <seo.disparate@gmail.com>
Fri, 28 Jun 2024 09:15:40 +0000 (18:15 +0900)
src/data_structures/hash_map.c

index 56df22ac270ecdee09cffd35c0caf2acd9badc55..2d976029f9ff7297ce7f7432aae6ddafe8942523 100644 (file)
@@ -74,7 +74,8 @@ unsigned long long simple_archiver_hash_map_internal_key_to_hash(
   unsigned long long temp = 0;
   unsigned int count = 0;
   for (unsigned int idx = 0; idx < key_size; ++idx) {
-    temp |= *((unsigned char *)key + count++);
+    temp |= ((unsigned long long)*((unsigned char *)key)) << (8 * count);
+    ++count;
     if (count >= 8) {
       count = 0;
       seed += temp;