From da460edb8bea5eddb893a92e30edaf90a6d547dc Mon Sep 17 00:00:00 2001 From: Antonio Scandurra Date: Thu, 23 Dec 2021 09:59:39 +0100 Subject: [PATCH] Remove BufferState when the last buffer's excerpt is removed --- crates/editor/src/multi_buffer.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/crates/editor/src/multi_buffer.rs b/crates/editor/src/multi_buffer.rs index fb1e369c1bb0afeac5cc6ebdccb74ef3774c1247..cb011f30da47fcf08497e4e07ade04632c6e2546 100644 --- a/crates/editor/src/multi_buffer.rs +++ b/crates/editor/src/multi_buffer.rs @@ -704,6 +704,9 @@ impl MultiBuffer { loop { if let Some(buffer_state) = buffers.get_mut(&excerpt.buffer_id) { buffer_state.excerpts.retain(|id| id != excerpt_id); + if buffer_state.excerpts.is_empty() { + buffers.remove(&excerpt.buffer_id); + } } cursor.next(&());