You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-15 13:51:40 +00:00
Fix DAP bugs: crash when removing breakpoints, duplicated breakpoint data, source checksums not updating
This commit is contained in:
@@ -76,6 +76,7 @@ class DebugAdapterProtocol : public Object {
|
||||
friend class DebugAdapterParser;
|
||||
|
||||
using DAPVarID = int;
|
||||
using DAPStackFrameID = int;
|
||||
|
||||
private:
|
||||
static DebugAdapterProtocol *singleton;
|
||||
@@ -109,6 +110,9 @@ private:
|
||||
bool request_remote_object(const ObjectID &p_object_id);
|
||||
bool request_remote_evaluate(const String &p_eval, int p_stack_frame);
|
||||
|
||||
const DAP::Source &fetch_source(const String &p_path);
|
||||
void update_source(const String &p_path);
|
||||
|
||||
bool _initialized = false;
|
||||
bool _processing_breakpoint = false;
|
||||
bool _stepping = false;
|
||||
@@ -125,7 +129,9 @@ private:
|
||||
int stackframe_id = 0;
|
||||
DAPVarID variable_id = 0;
|
||||
List<DAP::Breakpoint> breakpoint_list;
|
||||
HashMap<DAP::StackFrame, List<int>, DAP::StackFrame> stackframe_list;
|
||||
HashMap<String, DAP::Source> breakpoint_source_list;
|
||||
List<DAP::StackFrame> stackframe_list;
|
||||
HashMap<DAPStackFrameID, Vector<int>> scope_list;
|
||||
HashMap<DAPVarID, Array> variable_list;
|
||||
|
||||
HashMap<ObjectID, DAPVarID> object_list;
|
||||
|
||||
Reference in New Issue
Block a user