From 8f40fc7a1bcc3b7c4bc2981832bffd3f9ac9ed6e Mon Sep 17 00:00:00 2001 From: Clayton Craft Date: Wed, 19 Mar 2025 09:11:30 -0700 Subject: [PATCH] kms: protect against potential overflow of Duration when calculating avg frametime Also see: https://github.com/Smithay/smithay/pull/1685 Fixes #1062 Co-authored-by: Victoria Brekenfeld --- src/backend/kms/surface/timings.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/kms/surface/timings.rs b/src/backend/kms/surface/timings.rs index 48cdbf7f..28dcc9d3 100644 --- a/src/backend/kms/surface/timings.rs +++ b/src/backend/kms/surface/timings.rs @@ -213,7 +213,7 @@ impl Timings { .rev() .take(window) .map(|f| f.frame_time()) - .sum::() + .try_fold(Duration::ZERO, |acc, x| acc.checked_add(x))? / (window.min(self.previous_frames.len()) as u32), ) }