This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
fix some thinkos in the new hash code
authorYves Orton <demerphq@gmail.com>
Mon, 2 Oct 2017 13:00:58 +0000 (15:00 +0200)
committerYves Orton <demerphq@gmail.com>
Mon, 2 Oct 2017 13:00:58 +0000 (15:00 +0200)
pointed out by Tux on irc. I dont think this will solve
all his problems, but it is a first step....

stadtx_hash.h
zaphod32_hash.h

index 30278e3..db6c406 100644 (file)
@@ -50,8 +50,8 @@
 #define STMT_END while(0)
 #endif
 
-#ifndef STADTX_UNALIGNED_AND_LITTLE_ENDIAN
-#define STADTX_UNALIGNED_AND_LITTLE_ENDIAN 1
+#ifndef STADTX_ALLOW_UNALIGNED_AND_LITTLE_ENDIAN
+#define STADTX_ALLOW_UNALIGNED_AND_LITTLE_ENDIAN 1
 #endif
 
 #if STADTX_ALLOW_UNALIGNED_AND_LITTLE_ENDIAN
@@ -170,7 +170,7 @@ STADTX_STATIC_INLINE U64 stadtx_hash_with_state(
     const STRLEN key_len
 ) {
     U64 *state= (U64 *)state_ch;
-    U64 len = key_len;
+    STRLEN len = key_len;
     U64 v0= state[0] ^ ((key_len+1) * STADTX_K0_U64);
     U64 v1= state[1] ^ ((key_len+2) * STADTX_K1_U64);
     if (len < 32) {
index 842b247..353d85b 100644 (file)
@@ -184,7 +184,7 @@ U32 zaphod32_hash_with_state(
 ) {
     U32 *state= (U32 *)state_ch;
     const U8 *end;
-    U32 len = key_len; 
+    STRLEN len = key_len;
     U32 v0= state[0];
     U32 v1= state[1];
     U32 v2= state[2] ^ (0xC41A7AB1 * (key_len + 1));