From 4f0ffdcdaf39409c4dbcb4d39fd7f05c85f818a0 Mon Sep 17 00:00:00 2001 From: Max Brunsfeld Date: Thu, 27 Jan 2022 15:38:10 -0800 Subject: [PATCH] Avoid panic when closing the last tab in a pane, due to calling `activate_item` --- crates/workspace/src/pane.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/crates/workspace/src/pane.rs b/crates/workspace/src/pane.rs index 5cbd9fe559f9908c73f2132d14205a887e5c1868..a112213795951cae3607cbb8a72d4d0c487ba892 100644 --- a/crates/workspace/src/pane.rs +++ b/crates/workspace/src/pane.rs @@ -312,7 +312,9 @@ impl Pane { pub fn activate_item(&mut self, index: usize, cx: &mut ViewContext) { if index < self.item_views.len() { let prev_active_item_ix = mem::replace(&mut self.active_item_index, index); - if prev_active_item_ix != self.active_item_index { + if prev_active_item_ix != self.active_item_index + && prev_active_item_ix < self.item_views.len() + { self.item_views[prev_active_item_ix].1.deactivated(cx); } self.update_active_toolbar(cx);