From cf50743843659560bd079c6f651b345003df6642 Mon Sep 17 00:00:00 2001 From: Pepper Lebeck-Jobe Date: Wed, 1 May 2024 23:32:58 +0200 Subject: [PATCH] Fix right-shifting to zero. --- arbitrator/prover/src/merkle.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arbitrator/prover/src/merkle.rs b/arbitrator/prover/src/merkle.rs index 52afd587d..adf4c1ea8 100644 --- a/arbitrator/prover/src/merkle.rs +++ b/arbitrator/prover/src/merkle.rs @@ -9,6 +9,7 @@ use enum_iterator::Sequence; #[cfg(feature = "counters")] use enum_iterator::all; +use std::cmp::max; use std::cmp::Ordering; #[cfg(feature = "counters")] use std::sync::atomic::AtomicUsize; @@ -347,7 +348,7 @@ impl Merkle { let mut new_size = idx + hashes.len(); for (layer_i, layer) in self.layers.iter_mut().enumerate() { layer.resize(new_size, self.empty_layers[layer_i]); - new_size >>= 1; + new_size = max(new_size >> 1, 1); } for hash in hashes { self.set(idx, hash);