debugger: do not show a dialog for SIGTRAP as this happens too often

when stopping debugging.
This commit is contained in:
hjk
2009-08-18 16:38:06 +02:00
parent 7ab3981b6b
commit f8300260ea

View File

@@ -1185,17 +1185,21 @@ void GdbEngine::handleAsyncOutput(const GdbMi &data)
if (reason == "signal-received" if (reason == "signal-received"
&& theDebuggerBoolSetting(UseMessageBoxForSignals)) { && theDebuggerBoolSetting(UseMessageBoxForSignals)) {
QByteArray name = data.findChild("signal-name").data(); QByteArray name = data.findChild("signal-name").data();
QByteArray meaning = data.findChild("signal-meaning").data(); // Ignore SIGTRAP as they are showing up regularily when
QString msg = tr("<p>The inferior stopped because it received a " // stopping debugging.
"signal from the Operating System.<p>" if (name != "SIGTRAP") {
"<table><tr><td>Signal name : </td><td>%1</td></tr>" QByteArray meaning = data.findChild("signal-meaning").data();
"<tr><td>Signal meaning : </td><td>%2</td></tr></table>") QString msg = tr("<p>The inferior stopped because it received a "
.arg(name.isEmpty() ? tr(" <Unknown> ") : _(name)) "signal from the Operating System.<p>"
.arg(meaning.isEmpty() ? tr(" <Unknown> ") : _(meaning)); "<table><tr><td>Signal name : </td><td>%1</td></tr>"
QMessageBox *mb = new QMessageBox(QMessageBox::Information, "<tr><td>Signal meaning : </td><td>%2</td></tr></table>")
tr("Signal received"), msg); .arg(name.isEmpty() ? tr(" <Unknown> ") : _(name))
mb->setAttribute(Qt::WA_DeleteOnClose); .arg(meaning.isEmpty() ? tr(" <Unknown> ") : _(meaning));
mb->show(); QMessageBox *mb = new QMessageBox(QMessageBox::Information,
tr("Signal received"), msg);
mb->setAttribute(Qt::WA_DeleteOnClose);
mb->show();
}
} }
if (reason.isEmpty()) if (reason.isEmpty())
@@ -4130,7 +4134,6 @@ void GdbEngine::handleFetchDisassemblerByAddress1(const GdbResultRecord &record,
void GdbEngine::handleFetchDisassemblerByAddress0(const GdbResultRecord &record, void GdbEngine::handleFetchDisassemblerByAddress0(const GdbResultRecord &record,
const QVariant &cookie) const QVariant &cookie)
{ {
bool ok = true;
DisassemblerAgentCookie ac = cookie.value<DisassemblerAgentCookie>(); DisassemblerAgentCookie ac = cookie.value<DisassemblerAgentCookie>();
QTC_ASSERT(ac.agent, return); QTC_ASSERT(ac.agent, return);