forked from qt-creator/qt-creator
Debugger: Remove the "Attempt quick start option"
This was GDB-only. It complicates the startup mechanism including breaking certain setups (e.g. users manually controlling "set auto-solib-add" in their .gdbinit) without providing too much benefit (anymore). Part of the potential debugger startup time improvements that were possibly gained by the feature are nowadays available by using a release build *without* debug info, as one of the original reasons to not use that (making Qt type introspection hard/impossible) is largely gone with 4.2+. Change-Id: Iffb34e0035f39ad74b24bf025749b546f25a489b Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -217,7 +217,6 @@ GdbEngine::GdbEngine(const DebuggerRunParameters &startParameters)
|
||||
m_commandsDoneCallback = 0;
|
||||
m_stackNeeded = false;
|
||||
m_terminalTrap = startParameters.useTerminal;
|
||||
m_fullStartDone = false;
|
||||
m_systemDumpersLoaded = false;
|
||||
m_rerunPending = false;
|
||||
m_inUpdateLocals = false;
|
||||
@@ -1382,14 +1381,6 @@ void GdbEngine::handleStopResponse(const GdbMi &data)
|
||||
return;
|
||||
}
|
||||
|
||||
bool gotoHandleStop1 = true;
|
||||
if (!m_fullStartDone) {
|
||||
m_fullStartDone = true;
|
||||
runCommand({"sharedlibrary .*",
|
||||
[this, data](const DebuggerResponse &) { handleStop1(data); }});
|
||||
gotoHandleStop1 = false;
|
||||
}
|
||||
|
||||
BreakpointResponseId rid(data["bkptno"].data());
|
||||
int lineNumber = 0;
|
||||
QString fullName;
|
||||
@@ -1468,8 +1459,7 @@ void GdbEngine::handleStopResponse(const GdbMi &data)
|
||||
|
||||
CHECK_STATE(InferiorStopOk);
|
||||
|
||||
if (gotoHandleStop1)
|
||||
handleStop1(data);
|
||||
handleStop1(data);
|
||||
}
|
||||
|
||||
static QString stopSignal(const Abi &abi)
|
||||
@@ -4024,12 +4014,6 @@ void GdbEngine::startGdb(const QStringList &args)
|
||||
//QByteArray ba = QFileInfo(sp.dumperLibrary).path().toLocal8Bit();
|
||||
//if (!ba.isEmpty())
|
||||
// runCommand("set solib-search-path " + ba);
|
||||
if (attemptQuickStart()) {
|
||||
runCommand({"set auto-solib-add off", ConsoleCommand});
|
||||
} else {
|
||||
m_fullStartDone = true;
|
||||
runCommand({"set auto-solib-add on", ConsoleCommand});
|
||||
}
|
||||
|
||||
if (boolSetting(MultiInferior) || runParameters().multiProcess) {
|
||||
//runCommand("set follow-exec-mode new");
|
||||
@@ -4362,22 +4346,6 @@ void GdbEngine::requestDebugInformation(const DebugInfoTask &task)
|
||||
QProcess::startDetached(task.command);
|
||||
}
|
||||
|
||||
bool GdbEngine::attemptQuickStart() const
|
||||
{
|
||||
// Don't try if the user does not ask for it.
|
||||
if (!boolSetting(AttemptQuickStart))
|
||||
return false;
|
||||
|
||||
// Don't try if there are breakpoints we might be able to handle.
|
||||
BreakHandler *handler = breakHandler();
|
||||
foreach (Breakpoint bp, handler->unclaimedBreakpoints()) {
|
||||
if (acceptsBreakpoint(bp))
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void GdbEngine::write(const QByteArray &data)
|
||||
{
|
||||
m_gdbProc.write(data);
|
||||
|
||||
Reference in New Issue
Block a user