From bfab0b71e0a92cd75d309909fd247aadc3a8a7e0 Mon Sep 17 00:00:00 2001 From: Bennet Bo Fenner Date: Tue, 9 Dec 2025 19:55:29 +0100 Subject: [PATCH] agent_ui: Fix panic in message editor (#44493) Release Notes: - N/A --- crates/agent_ui/src/acp/message_editor.rs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/crates/agent_ui/src/acp/message_editor.rs b/crates/agent_ui/src/acp/message_editor.rs index a0aca0c51bd0afe1ea61f6a58c3585d68172ec24..bc293c98a84540c1e00d9895be2cc05b0bdd08a5 100644 --- a/crates/agent_ui/src/acp/message_editor.rs +++ b/crates/agent_ui/src/acp/message_editor.rs @@ -567,6 +567,14 @@ impl MessageEditor { { cx.stop_propagation(); + let insertion_target = self + .editor + .read(cx) + .selections + .newest_anchor() + .start + .text_anchor; + let project = workspace.read(cx).project().clone(); for selection in selections { if let (Some(file_path), Some(line_range)) = @@ -587,8 +595,7 @@ impl MessageEditor { let snapshot = buffer.snapshot(cx); let (excerpt_id, _, buffer_snapshot) = snapshot.as_singleton().unwrap(); - let start_offset = buffer_snapshot.len(); - let text_anchor = buffer_snapshot.anchor_before(start_offset); + let text_anchor = insertion_target.bias_left(&buffer_snapshot); editor.insert(&mention_text, window, cx); editor.insert(" ", window, cx);