From 0b0b1d850a0a622dc7e74ec3937523ea1dc93fe8 Mon Sep 17 00:00:00 2001 From: Blaž Hrastnik Date: Mon, 30 Aug 2021 11:22:26 +0900 Subject: dap: Stop comparing file paths per line number --- helix-term/src/ui/editor.rs | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) (limited to 'helix-term/src/ui') diff --git a/helix-term/src/ui/editor.rs b/helix-term/src/ui/editor.rs index e13eb323..725d58b3 100644 --- a/helix-term/src/ui/editor.rs +++ b/helix-term/src/ui/editor.rs @@ -452,9 +452,19 @@ impl EditorView { if let Some(path) = doc.path() { breakpoints = debugger.breakpoints.get(path); + // if we have a frame, and the frame path matches document if let (Some(frame), Some(thread_id)) = (debugger.active_frame, debugger.thread_id) { - stack_frame = debugger.stack_frames[&thread_id].get(frame); // TODO: drop the clone.. + let frame = debugger.stack_frames[&thread_id].get(frame); // TODO: drop the clone.. + if let Some(StackFrame { + source: Some(source), + .. + }) = &frame + { + if source.path.as_ref() == Some(path) { + stack_frame = frame; + } + }; }; } } @@ -493,19 +503,12 @@ impl EditorView { } if let Some(frame) = stack_frame { - if let Some(src) = &frame.source { - if doc - .path() - .map(|path| src.path.as_ref() == Some(path)) - .unwrap_or(false) - && frame.line - 1 == line - { - surface.set_style( - Rect::new(viewport.x, viewport.y + i as u16, 6, 1), - helix_view::graphics::Style::default() - .bg(helix_view::graphics::Color::LightYellow), - ); - } + if frame.line - 1 == line { + surface.set_style( + Rect::new(viewport.x, viewport.y + i as u16, 6, 1), + helix_view::graphics::Style::default() + .bg(helix_view::graphics::Color::LightYellow), + ); } } -- cgit v1.2.3-70-g09d2