From ee7dfd0a098ffa47bdb7a511cddf4bf2068412e0 Mon Sep 17 00:00:00 2001 From: Ernie Pasveer Date: Sat, 27 Nov 2021 17:17:59 -0600 Subject: [PATCH] Attach pid was broken. Fixed now. Didn't pickup when "*stopped,frame" was issued. --- src/SeerGdbWidget.cpp | 3 +++ src/SeerMainWindow.cpp | 1 + src/SeerRunStatusIndicator.cpp | 9 +++++---- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/SeerGdbWidget.cpp b/src/SeerGdbWidget.cpp index f721823..76e559b 100644 --- a/src/SeerGdbWidget.cpp +++ b/src/SeerGdbWidget.cpp @@ -301,6 +301,9 @@ void SeerGdbWidget::handleText (const QString& text) { }else if (text.startsWith("*stopped,reason=\"exited\"")) { emit stoppingPointReached(); + }else if (text.startsWith("*stopped,frame=")) { + emit stoppingPointReached(); + }else if (text.startsWith("=thread-group-started,")) { // =thread-group-started,id="i1",pid="30916" diff --git a/src/SeerMainWindow.cpp b/src/SeerMainWindow.cpp index 6b5bc5d..e7bd32f 100644 --- a/src/SeerMainWindow.cpp +++ b/src/SeerMainWindow.cpp @@ -360,6 +360,7 @@ void SeerMainWindow::handleText (const QString& text) { }else if (text.startsWith("*stopped,frame=")) { //*stopped,frame={addr=\"0x00007f0ee0d2d954\",func=\"rfft\",args=[{name=\"a\",value=\"...\"},... + //*stopped,frame={addr="0x00007f608ec49fc0",func="__pthread_clockjoin_ex",args=[],from="/lib64/libpthread.so.0",arch="i386:x86-64"},thread-id="1",stopped-threads="all",core="3" return; }else if (text.startsWith("^connected,frame=")) { diff --git a/src/SeerRunStatusIndicator.cpp b/src/SeerRunStatusIndicator.cpp index b3fab6b..233c3c6 100644 --- a/src/SeerRunStatusIndicator.cpp +++ b/src/SeerRunStatusIndicator.cpp @@ -90,6 +90,11 @@ void SeerRunStatusIndicator::handleText (const QString& text) { }else if (text.startsWith("*stopped,reason=\"signal-received\"")) { setRunStatus(SeerRunStatusIndicator::Stopped); + }else if (text.startsWith("*stopped,frame=")) { + //*stopped,frame={addr=\"0x00007f0ee0d2d954\",func=\"rfft\",args=[{name=\"a\",value=\"...\"},... + //*stopped,frame={addr="0x00007f608ec49fc0",func="__pthread_clockjoin_ex",args=[],from="/lib64/libpthread.so.0",arch="i386:x86-64"},thread-id="1",stopped-threads="all",core="3" + setRunStatus(SeerRunStatusIndicator::Stopped); + }else if (text.startsWith("*stopped,reason=\"exited-normally\"")) { setRunStatus(SeerRunStatusIndicator::Idle); @@ -101,10 +106,6 @@ void SeerRunStatusIndicator::handleText (const QString& text) { }else if (text.startsWith("*stopped,reason=\"exited\"")) { setRunStatus(SeerRunStatusIndicator::Idle); - }else if (text.startsWith("*stopped,frame=")) { - //*stopped,frame={addr=\"0x00007f0ee0d2d954\",func=\"rfft\",args=[{name=\"a\",value=\"...\"},... - return; - }else if (text.startsWith("^connected,frame=")) { //^connected,frame={level=\"0\",addr=\"0x00007f48351f80c1\",func=\"read\",args=[],from=\"/lib64/libc.so.6\",arch=\"i386:x86-64\"}" return;