From 20bd119a7e70a1a570c2a53e3db92860be43ad5b Mon Sep 17 00:00:00 2001 From: rabite Date: Mon, 6 May 2019 20:26:20 +0200 Subject: fix crash when filtering down to 1 file --- src/listview.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/listview.rs b/src/listview.rs index f584597..1d2d44e 100644 --- a/src/listview.rs +++ b/src/listview.rs @@ -440,6 +440,7 @@ impl ListView fn filter(&mut self) -> HResult<()> { let filter = self.minibuffer("filter").ok(); + let selected_file = self.selected_file().clone(); let msgstr = filter.clone().unwrap_or(String::from("")); self.show_status(&format!("Filtering with: \"{}\"", msgstr)).log(); @@ -447,13 +448,12 @@ impl ListView self.content.set_filter(filter); if self.content.len() == 0 { - self.show_status("No files like that! Resetting filter").log(); + self.show_status("No files like that! Resetting filter.").log(); self.content.set_filter(Some("".to_string())); } - if self.get_selection() > self.len() { - self.set_selection(self.len()); - } + self.select_file(&selected_file); + Ok(()) } -- cgit v1.2.3