From 7e454a5bab9a59ede154a8e1815c75b60fba184b Mon Sep 17 00:00:00 2001 From: Noethix55555 <277300782+Noethix55555@users.noreply.github.com> Date: Wed, 17 Jun 2026 19:44:05 -0400 Subject: [PATCH] fix(blame): avoid underflow when blaming an empty file --- src/popups/blame_file.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/popups/blame_file.rs b/src/popups/blame_file.rs index b7d1304b33..3646b4943b 100644 --- a/src/popups/blame_file.rs +++ b/src/popups/blame_file.rs @@ -326,7 +326,10 @@ impl Component for BlameFilePopup { .as_ref() .and_then(|blame| blame.result()); if let Some(blame_result) = maybe_blame_result { - let max_line = blame_result.lines().len() - 1; + let max_line = blame_result + .lines() + .len() + .saturating_sub(1); self.queue.push( InternalEvent::OpenGotoLinePopup( max_line, @@ -703,7 +706,9 @@ impl BlameFilePopup { self.blame .as_ref() .and_then(|blame| blame.result()) - .map_or(0, |file_blame| file_blame.lines().len() - 1) + .map_or(0, |file_blame| { + file_blame.lines().len().saturating_sub(1) + }) } fn get_line_number_width(&self) -> usize {