From 40c62cda5fff7833ef1e12129fc58d45ec0bff7e Mon Sep 17 00:00:00 2001 From: Max Brunsfeld Date: Thu, 6 Mar 2025 16:25:27 -0800 Subject: [PATCH] Fix early return when reaching end excerpt in `lift_buffer_metadata` (#26253) Release Notes: - Fixed a bug causing slowness when viewing multi buffers with lots of excerpts --- crates/multi_buffer/src/multi_buffer.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/crates/multi_buffer/src/multi_buffer.rs b/crates/multi_buffer/src/multi_buffer.rs index b578acd303..1d7183532b 100644 --- a/crates/multi_buffer/src/multi_buffer.rs +++ b/crates/multi_buffer/src/multi_buffer.rs @@ -3830,6 +3830,11 @@ impl MultiBufferSnapshot { // When there are no more metadata items for this excerpt, move to the next excerpt. else { current_excerpt_metadata.take(); + if let Some((end_excerpt_id, _)) = range_end { + if excerpt.id == end_excerpt_id { + return None; + } + } cursor.next_excerpt(); } })