Debugger: Transform DebuggerRunParameters::expectedSignals

Task-number: QTCREATORBUG-29168
Change-Id: I5f123581a70979ea35e5aabc76fb10af4813c468
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Jarek Kobus
2025-01-10 13:05:53 +01:00
parent bdc1b186c1
commit 519446e05b
5 changed files with 6 additions and 11 deletions

View File

@@ -138,8 +138,8 @@ public:
void setCommandsAfterConnect(const QString &commands) { m_commandsAfterConnect = commands; } void setCommandsAfterConnect(const QString &commands) { m_commandsAfterConnect = commands; }
QString commandsAfterConnect() const { return m_commandsAfterConnect; } QString commandsAfterConnect() const { return m_commandsAfterConnect; }
// Used by Valgrind void addExpectedSignal(const QString &signal) { m_expectedSignals.append(signal); }
QStringList expectedSignals; QStringList expectedSignals() const { return m_expectedSignals; }
// For QNX debugging // For QNX debugging
bool useCtrlCStub = false; bool useCtrlCStub = false;
@@ -244,6 +244,8 @@ private:
QString m_commandsForReset; // Used by baremetal plugin. Commands used for resetting the inferior QString m_commandsForReset; // Used by baremetal plugin. Commands used for resetting the inferior
bool m_useContinueInsteadOfRun = false; // If connected to a hw debugger run is not possible but continue is used bool m_useContinueInsteadOfRun = false; // If connected to a hw debugger run is not possible but continue is used
QString m_commandsAfterConnect; // Additional commands to post after connection to debug target QString m_commandsAfterConnect; // Additional commands to post after connection to debug target
QStringList m_expectedSignals; // Used by Valgrind
}; };
namespace Internal { namespace Internal {

View File

@@ -204,11 +204,6 @@ void DebuggerRunTool::setCrashParameter(const QString &event)
m_runParameters.crashParameter = event; m_runParameters.crashParameter = event;
} }
void DebuggerRunTool::addExpectedSignal(const QString &signal)
{
m_runParameters.expectedSignals.append(signal);
}
void DebuggerRunTool::addSearchDirectory(const Utils::FilePath &dir) void DebuggerRunTool::addSearchDirectory(const Utils::FilePath &dir)
{ {
m_runParameters.additionalSearchDirectories.append(dir); m_runParameters.additionalSearchDirectories.append(dir);

View File

@@ -33,8 +33,6 @@ public:
void setStartMessage(const QString &msg); void setStartMessage(const QString &msg);
void setCrashParameter(const QString &event); void setCrashParameter(const QString &event);
void addExpectedSignal(const QString &signal);
void setSysRoot(const Utils::FilePath &sysRoot); void setSysRoot(const Utils::FilePath &sysRoot);
void setContinueAfterAttach(bool on); void setContinueAfterAttach(bool on);

View File

@@ -1421,7 +1421,7 @@ void GdbEngine::handleStop2(const GdbMi &data)
QString meaning = data["signal-meaning"].data(); QString meaning = data["signal-meaning"].data();
// Ignore these as they are showing up regularly when // Ignore these as they are showing up regularly when
// stopping debugging. // stopping debugging.
if (name == stopSignal(rp.toolChainAbi) || rp.expectedSignals.contains(name)) { if (name == stopSignal(rp.toolChainAbi) || rp.expectedSignals().contains(name)) {
showMessage(name + " CONSIDERED HARMLESS. CONTINUING."); showMessage(name + " CONSIDERED HARMLESS. CONTINUING.");
} else if (m_isQnxGdb && name == "0" && meaning == "Signal 0") { } else if (m_isQnxGdb && name == "0" && meaning == "Signal 0") {
showMessage("SIGNAL 0 CONSIDERED BOGUS."); showMessage("SIGNAL 0 CONSIDERED BOGUS.");

View File

@@ -193,7 +193,7 @@ void MemcheckToolRunner::startDebugger(qint64 valgrindPid)
rp.setDisplayName(QString("VGdb %1").arg(valgrindPid)); rp.setDisplayName(QString("VGdb %1").arg(valgrindPid));
rp.setRemoteChannel(QString("| vgdb --pid=%1").arg(valgrindPid)); rp.setRemoteChannel(QString("| vgdb --pid=%1").arg(valgrindPid));
rp.setUseContinueInsteadOfRun(true); rp.setUseContinueInsteadOfRun(true);
debugger->addExpectedSignal("SIGTRAP"); rp.addExpectedSignal("SIGTRAP");
connect(runControl(), &RunControl::stopped, debugger, &RunControl::deleteLater); connect(runControl(), &RunControl::stopped, debugger, &RunControl::deleteLater);