From 10a8c62247c2255410c634a5f5cd7b7fb7272492 Mon Sep 17 00:00:00 2001 From: fakeshadow <24548779@qq.com> Date: Fri, 16 Apr 2021 09:07:59 +0800 Subject: [PATCH] Fix worker_avail --- actix-server/src/accept.rs | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/actix-server/src/accept.rs b/actix-server/src/accept.rs index 026bcc37..2ed9d91c 100644 --- a/actix-server/src/accept.rs +++ b/actix-server/src/accept.rs @@ -121,9 +121,9 @@ impl Availability { } else { let shift = 1 << idx as u128; - debug_assert_ne!(self.0[offset] & shift, 0); - - self.0[offset] ^= shift; + if self.0[offset] & shift != 0 { + self.0[offset] ^= shift; + } } } @@ -527,6 +527,9 @@ mod test { aval.set_available(idx, false); assert!(!aval.available()); + + aval.set_available(idx, false); + assert!(!aval.available()); } fn multi(aval: &mut Availability, mut idx: Vec) { @@ -565,13 +568,6 @@ mod test { single(&mut aval, 512); } - #[test] - #[should_panic] - fn double_set_unavailable() { - let mut aval = Availability::default(); - aval.set_available(233, false); - } - #[test] fn pin_point() { let mut aval = Availability::default();