From d9c40d6895df0d24909a4b57818886d367c7ff3a Mon Sep 17 00:00:00 2001 From: Nemo157 Date: Fri, 26 Jan 2024 12:53:34 +0100 Subject: fix: Skip padding time if it will overflow the allowed prefix length (#1630) --- atuin/src/command/client/search/history_list.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/atuin/src/command/client/search/history_list.rs b/atuin/src/command/client/search/history_list.rs index 31c2ac53..7ae2c3d7 100644 --- a/atuin/src/command/client/search/history_list.rs +++ b/atuin/src/command/client/search/history_list.rs @@ -164,10 +164,10 @@ impl DrawState<'_> { let time = format_duration(since.try_into().unwrap_or_default()); // pad the time a little bit before we write. this aligns things nicely - self.draw( - &SPACES[..((PREFIX_LENGTH - self.x) as usize - 4 - time.len())], - Style::default(), - ); + // skip padding if for some reason it is already too long to align nicely + let padding = + usize::from(PREFIX_LENGTH).saturating_sub(usize::from(self.x) + 4 + time.len()); + self.draw(&SPACES[..padding], Style::default()); self.draw(&time, style); self.draw(" ago", style); -- cgit v1.3.1