From ff2dfc83e0dcb6202b178bb717e4d02eaa78a240 Mon Sep 17 00:00:00 2001 From: cxl Date: Tue, 16 Apr 2019 21:55:39 +0000 Subject: [PATCH] ide: Mingw Gdb crashing on CPU tab, fixed by limiting the list of registers git-svn-id: svn://ultimatepp.org/upp/trunk@13001 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppsrc/ide/Debuggers/GdbData.cpp | 4 ++++ uppsrc/ide/ide.cpp | 5 ++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/uppsrc/ide/Debuggers/GdbData.cpp b/uppsrc/ide/Debuggers/GdbData.cpp index 35a9902f0..962c73dad 100644 --- a/uppsrc/ide/Debuggers/GdbData.cpp +++ b/uppsrc/ide/Debuggers/GdbData.cpp @@ -255,7 +255,11 @@ void Gdb::Self() void Gdb::Cpu() { +#ifdef PLATFORM_WIN32 // mingw dbg is crashing if listing all registers + String s = FastCmd("info registers rax rbx rcx rdx rsi rdi rbp rsp r8 r9 r10 r11 r12 r13 r14 r15"); +#else String s = FastCmd("info registers"); +#endif StringStream ss(s); cpu.Clear(); bool even = false; diff --git a/uppsrc/ide/ide.cpp b/uppsrc/ide/ide.cpp index 9d06aa86c..c8b1559e4 100644 --- a/uppsrc/ide/ide.cpp +++ b/uppsrc/ide/ide.cpp @@ -627,8 +627,11 @@ void Ide::Periodic() { CheckFileUpdate(); SetIcon(); - if(debugger && debugger->IsFinished() && !IdeIsDebugLock()) + if(debugger && debugger->IsFinished() && !IdeIsDebugLock()) { + DDUMP(~debugger); + DDUMP(debugger->IsFinished()); IdeEndDebug(); + } } const Workspace& Ide::IdeWorkspace() const