diff --git a/crates/prune/types/src/mode.rs b/crates/prune/types/src/mode.rs index d35cb66695..037e6fa496 100644 --- a/crates/prune/types/src/mode.rs +++ b/crates/prune/types/src/mode.rs @@ -40,7 +40,9 @@ impl PruneMode { } Self::Before(n) if *n == tip + 1 && purpose.is_static_file() => Some((tip, *self)), Self::Before(n) if *n > tip => None, // Nothing to prune yet - Self::Before(n) if tip - n >= segment.min_blocks(purpose) => Some((n - 1, *self)), + Self::Before(n) if tip - n >= segment.min_blocks(purpose) => { + Some(((*n).saturating_sub(1), *self)) + } _ => return Err(PruneSegmentError::Configuration(segment)), }; Ok(result)