Change summary
crates/multi_buffer/src/multi_buffer.rs | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
Detailed changes
@@ -1719,9 +1719,7 @@ impl MultiBuffer {
(None, Some(_)) => {
let existing_id = existing_iter.next().unwrap();
let locator = snapshot.excerpt_locator_for_id(existing_id);
- let Some(existing_excerpt) = excerpts_cursor.item() else {
- break;
- };
+ let existing_excerpt = excerpts_cursor.item().unwrap();
excerpts_cursor.seek_forward(&Some(locator), Bias::Left, &());
let existing_end = existing_excerpt
.range
@@ -1993,6 +1991,8 @@ impl MultiBuffer {
self.sync(cx);
let ids = self.excerpt_ids();
self.buffers.borrow_mut().clear();
+ self.excerpts_by_path.clear();
+ self.paths_by_excerpt.clear();
let mut snapshot = self.snapshot.borrow_mut();
let start = ExcerptOffset::new(0);
let prev_len = ExcerptOffset::new(snapshot.excerpts.summary().text.len);
@@ -2001,6 +2001,7 @@ impl MultiBuffer {
snapshot.is_dirty = false;
snapshot.has_deleted_file = false;
snapshot.has_conflict = false;
+ snapshot.replaced_excerpts.clear();
self.sync_diff_transforms(
&mut snapshot,