diff --git a/lib/murmurHash3js.js b/lib/murmurHash3js.js index e869076..bd294f9 100644 --- a/lib/murmurHash3js.js +++ b/lib/murmurHash3js.js @@ -27,7 +27,7 @@ // 32bit int. // - return ((m & 0xffff) * n) + ((((m >>> 16) * n) & 0xffff) << 16); + return ((m & 0xffff) * n) + (((((m >>> 16) * n) & 0xffff) << 16) >>> 0); } function _x86Rotl(m, n) { @@ -36,7 +36,7 @@ // returns the 32bit int rotated left by that number of positions. // - return (m << n) | (m >>> (32 - n)); + return ((m << n) >>> 0) | (m >>> (32 - n)); } function _x86Fmix(h) { @@ -206,7 +206,7 @@ var c2 = 0x1b873593; for (var i = 0; i < bytes; i = i + 4) { - k1 = ((key.charCodeAt(i) & 0xff)) | ((key.charCodeAt(i + 1) & 0xff) << 8) | ((key.charCodeAt(i + 2) & 0xff) << 16) | ((key.charCodeAt(i + 3) & 0xff) << 24); + k1 = (((key.charCodeAt(i) & 0xff)) | ((key.charCodeAt(i + 1) & 0xff) << 8) | ((key.charCodeAt(i + 2) & 0xff) << 16) | ((key.charCodeAt(i + 3) & 0xff) << 24)) >>> 0; k1 = _x86Multiply(k1, c1); k1 = _x86Rotl(k1, 15);