diff options
author | Liam <byteslice@airmail.cc> | 2024-01-02 17:12:16 -0500 |
---|---|---|
committer | Liam <byteslice@airmail.cc> | 2024-01-12 18:31:33 -0500 |
commit | f90a022d3a20c86399f49a8154847b73bc1b8fd3 (patch) | |
tree | 672214411189aaf408febc5aa9cc01e45aed5f5f /src/core/debugger/gdbstub.h | |
parent | f2fed21c1139c8d5c030bc5caee5c612dfe7979f (diff) |
kernel: fix debugger and process list lifetime
Diffstat (limited to 'src/core/debugger/gdbstub.h')
-rw-r--r-- | src/core/debugger/gdbstub.h | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/core/debugger/gdbstub.h b/src/core/debugger/gdbstub.h index 3681979204..232dcf49f5 100644 --- a/src/core/debugger/gdbstub.h +++ b/src/core/debugger/gdbstub.h @@ -12,13 +12,22 @@ #include "core/debugger/debugger_interface.h" #include "core/debugger/gdbstub_arch.h" +namespace Kernel { +class KProcess; +} + +namespace Core::Memory { +class Memory; +} + namespace Core { class System; class GDBStub : public DebuggerFrontend { public: - explicit GDBStub(DebuggerBackend& backend, Core::System& system); + explicit GDBStub(DebuggerBackend& backend, Core::System& system, + Kernel::KProcess* debug_process); ~GDBStub() override; void Connected() override; @@ -42,8 +51,12 @@ private: void SendReply(std::string_view data); void SendStatus(char status); + Kernel::KProcess* GetProcess(); + Core::Memory::Memory& GetMemory(); + private: Core::System& system; + Kernel::KProcess* debug_process; std::unique_ptr<GDBStubArch> arch; std::vector<char> current_command; std::map<VAddr, u32> replaced_instructions; |