forked from qt-creator/qt-creator
debugger: reality check, adjust FIXME comment re. use of gdb 6.8
This commit is contained in:
@@ -1207,16 +1207,18 @@ void GdbEngine::handleStopResponse(const GdbMi &data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FIXME: Replace the #ifdef by the "target" architecture.
|
// FIXME: Replace the #ifdef by the "target" architecture.
|
||||||
// FIXME: Is this needed at all anymore?
|
|
||||||
#ifdef Q_OS_LINUX
|
#ifdef Q_OS_LINUX
|
||||||
if (!m_entryPoint.isEmpty()) {
|
if (!m_entryPoint.isEmpty()) {
|
||||||
|
// This is needed as long as we support stock gdb 6.8.
|
||||||
if (frame.findChild("addr").data() == m_entryPoint) {
|
if (frame.findChild("addr").data() == m_entryPoint) {
|
||||||
// There are two expected reasons for getting here:
|
// There are two expected reasons for getting here:
|
||||||
// 1) For some reason, attaching to a stopped process causes *two* SIGSTOPs
|
// 1) For some reason, attaching to a stopped process causes *two*
|
||||||
|
// SIGSTOPs
|
||||||
// when trying to continue (kernel i386 2.6.24-23-ubuntu, gdb 6.8).
|
// when trying to continue (kernel i386 2.6.24-23-ubuntu, gdb 6.8).
|
||||||
// Interestingly enough, on MacOSX no signal is delivered at all.
|
// Interestingly enough, on MacOSX no signal is delivered at all.
|
||||||
// 2) The explicit tbreak at the entry point we set to query the PID.
|
// 2) The explicit tbreak at the entry point we set to query the PID.
|
||||||
// Gdb <= 6.8 reports a frame but no reason, 6.8.50+ reports everything.
|
// Gdb <= 6.8 reports a frame but no reason, 6.8.50+ reports
|
||||||
|
// everything.
|
||||||
// The case of the user really setting a breakpoint at _start is simply
|
// The case of the user really setting a breakpoint at _start is simply
|
||||||
// unsupported.
|
// unsupported.
|
||||||
if (!inferiorPid()) // For programs without -pthread under gdb <= 6.8.
|
if (!inferiorPid()) // For programs without -pthread under gdb <= 6.8.
|
||||||
|
|||||||
Reference in New Issue
Block a user