From 5c1cabdea15fd23bac7d85bae91116958d676052 Mon Sep 17 00:00:00 2001 From: Dominik Csapak Date: Thu, 28 Oct 2021 11:40:44 +0200 Subject: [PATCH] rrd: use saturating_sub to avoid underflow Without this, the tests fail in debug mode. Also having start (u64) underflow to a value greater than end does not really make sense Signed-off-by: Dominik Csapak Signed-off-by: Wolfgang Bumiller --- proxmox-rrd/src/rrd.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/proxmox-rrd/src/rrd.rs b/proxmox-rrd/src/rrd.rs index 20bf6ae3..2fab9df3 100644 --- a/proxmox-rrd/src/rrd.rs +++ b/proxmox-rrd/src/rrd.rs @@ -469,7 +469,7 @@ impl RRD { match rra { Some(rra) => { let end = end.unwrap_or_else(|| proxmox_time::epoch_f64() as u64); - let start = start.unwrap_or(end - 10*rra.resolution); + let start = start.unwrap_or(end.saturating_sub(10*rra.resolution)); Ok(rra.extract_data(start, end, self.source.last_update)) } None => bail!("unable to find RRA suitable ({:?}:{})", cf, resolution),