From 12deeddeb0aca9553f45445fbe2a5fb0c63cf9d5 Mon Sep 17 00:00:00 2001 From: Cecylia Bocovich Date: Sat, 9 Mar 2024 20:06:27 -0500 Subject: [PATCH] Further condense search for replacement spares --- crates/lox-library/src/lib.rs | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/crates/lox-library/src/lib.rs b/crates/lox-library/src/lib.rs index ffa233b..ea99c32 100644 --- a/crates/lox-library/src/lib.rs +++ b/crates/lox-library/src/lib.rs @@ -552,16 +552,12 @@ impl BridgeAuth { // - third dissolve a spare bucket to create more available bridges let Some(replacement) = available_bridge.or_else(|| { self.bridge_table.unallocated_bridges.pop().or_else(|| { - // First get the bucketnums for the replacement bridge in case it is a spare - let mut bucketnums: Vec = Vec::new(); - for (bucketnum, _) in positions.iter() { - bucketnums.push(*bucketnum); - } let Some(spare) = self .bridge_table .spares .iter() - .find(|x| !bucketnums.contains(x)) + // in case bridge is a spare, avoid replacing it with itself + .find(|x| !positions.iter().any(|(bucketnum, _)| &bucketnum == x)) .cloned() else { return None;