diff --git a/src/server/services/not_found.rs b/src/server/services/not_found.rs index 8e15d0b..87bc9db 100644 --- a/src/server/services/not_found.rs +++ b/src/server/services/not_found.rs @@ -11,9 +11,10 @@ fn mix_u32s(seed: impl Iterator) -> u32 { const U32_BIT_MIXING_CONSTANT: u32 = 0x7feb_352d; const U32_SELF_BIT_MIXING: u32 = 0x846c_a68b; - let mut random = seed.fold(0_u32, |acc, e| { + let mut random = seed.fold(0_u32, |mut acc, e| { // mix bits - acc.wrapping_add(e.wrapping_mul(U32_BIT_MIXING_CONSTANT)) + acc ^= e.wrapping_mul(e); + acc.wrapping_mul(U32_BIT_MIXING_CONSTANT).wrapping_add(e) }); // GPT's suggestion for a nicer distribution, like 8 cpu instructions so whatever