summaryrefslogtreecommitdiff
path: root/games/zoom/patches/patch-ab
diff options
context:
space:
mode:
Diffstat (limited to 'games/zoom/patches/patch-ab')
-rw-r--r--games/zoom/patches/patch-ab24
1 files changed, 24 insertions, 0 deletions
diff --git a/games/zoom/patches/patch-ab b/games/zoom/patches/patch-ab
new file mode 100644
index 00000000000..6ff0e8f41cd
--- /dev/null
+++ b/games/zoom/patches/patch-ab
@@ -0,0 +1,24 @@
+$NetBSD: patch-ab,v 1.1 2004/03/29 00:54:22 dillo Exp $
+
+--- src/hash.c.orig Thu Jul 25 20:10:02 2002
++++ src/hash.c Wed Mar 10 16:00:01 2004
+@@ -81,7 +81,7 @@
+ for (i = 0; i < 256; ++i) {
+ for (c = i << 24, j = 8; j > 0; --j)
+ c = c & 0x80000000 ? (c << 1) ^ CRC32_POLY : (c << 1);
+- crc32_table[i] = c;
++ crc32_table[i] = c & 0xffffffff;
+ }
+ }
+
+@@ -95,8 +95,8 @@
+ init_crc32(); /* build table */
+ crc = 0xffffffff; /* preload shift register, per CRC-32 spec */
+ for (p = buf; len > 0; ++p, --len)
+- crc = (crc << 8) ^ crc32_table[(crc >> 24) ^ *p];
+- return ~crc; /* transmit complement, per CRC-32 spec */
++ crc = ((crc << 8) ^ crc32_table[(crc >> 24) ^ *p]) & 0xffffffff;
++ return ~crc & 0xffffffff; /* transmit complement, per CRC-32 spec */
+ }
+
+ static struct bucket *hash_lookup(hash hash,