From eeb306f1256f642c99a5e55c345c063c67a276eb Mon Sep 17 00:00:00 2001 From: David Peacock Date: Mon, 16 May 2022 01:19:33 -0400 Subject: [PATCH] Use levels and startFrame in DAP server backtrace --- lib/debug/server_dap.rb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/debug/server_dap.rb b/lib/debug/server_dap.rb index fcb7d1085..3754d231a 100644 --- a/lib/debug/server_dap.rb +++ b/lib/debug/server_dap.rb @@ -621,8 +621,11 @@ def process_dap args case type when :backtrace + levels = req.dig('arguments', 'levels') || @target_frames.length + startFrame = req.dig('arguments', 'startFrame') || 0 + event! :dap_result, :backtrace, req, { - stackFrames: @target_frames.map{|frame| + stackFrames: @target_frames[startFrame, levels].map{|frame| path = frame.realpath || frame.path source_name = path ? File.basename(path) : frame.location.to_s