diff --git a/src/plugins/debugger/breakpoint.ui b/src/plugins/debugger/breakpoint.ui index 5842e70aca6ebdbd0d2aee29bf557f40a157e8cc..c1c63bd82bf34e2f2719411558d40db6d625410b 100644 --- a/src/plugins/debugger/breakpoint.ui +++ b/src/plugins/debugger/breakpoint.ui @@ -47,67 +47,81 @@ <widget class="QLineEdit" name="lineEditLineNumber"/> </item> <item row="3" column="1"> - <widget class="QCheckBox" name="checkBoxUseFullPath"> + <widget class="QCheckBox" name="checkBoxEnabled"> <property name="text"> <string/> </property> </widget> </item> <item row="3" column="0"> + <widget class="QLabel" name="labelEnabled"> + <property name="text"> + <string>Enabled:</string> + </property> + </widget> + </item> + <item row="4" column="1"> + <widget class="QCheckBox" name="checkBoxUseFullPath"> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="4" column="0"> <widget class="QLabel" name="labelUseFullPath"> <property name="text"> <string>Use full path:</string> </property> </widget> </item> - <item row="4" column="0"> + <item row="5" column="0"> <widget class="QLabel" name="labelAddress"> <property name="text"> <string>Address:</string> </property> </widget> </item> - <item row="4" column="1"> + <item row="5" column="1"> <widget class="QLineEdit" name="lineEditAddress"/> </item> - <item row="5" column="0"> + <item row="6" column="0"> <widget class="QLabel" name="labelFunction"> <property name="text"> <string>Function:</string> </property> </widget> </item> - <item row="5" column="1"> + <item row="6" column="1"> <widget class="QLineEdit" name="lineEditFunction"/> </item> - <item row="6" column="0"> + <item row="7" column="0"> <widget class="QLabel" name="labelCondition"> <property name="text"> <string>Condition:</string> </property> </widget> </item> - <item row="6" column="1"> + <item row="7" column="1"> <widget class="QLineEdit" name="lineEditCondition"/> </item> - <item row="7" column="0"> + <item row="8" column="0"> <widget class="QLabel" name="labelIgnoreCount"> <property name="text"> <string>Ignore count:</string> </property> </widget> </item> - <item row="7" column="1"> + <item row="8" column="1"> <widget class="QLineEdit" name="lineEditIgnoreCount"/> </item> - <item row="8" column="0"> + <item row="9" column="0"> <widget class="QLabel" name="labelThreadSpec"> <property name="text"> <string>Thread specification:</string> </property> </widget> </item> - <item row="8" column="1"> + <item row="9" column="1"> <widget class="QLineEdit" name="lineEditThreadSpec"/> </item> </layout> diff --git a/src/plugins/debugger/breakwindow.cpp b/src/plugins/debugger/breakwindow.cpp index 984eed4fd2a22e68b4e9081e9b2dd86f9a418e7c..490417570cf4b53e153ab68c60f101421b38abfd 100644 --- a/src/plugins/debugger/breakwindow.cpp +++ b/src/plugins/debugger/breakwindow.cpp @@ -193,6 +193,8 @@ void BreakpointDialog::clearParts(unsigned partsMask) void BreakpointDialog::getParts(unsigned partsMask, BreakpointParameters *data) const { + data->enabled = m_ui.checkBoxEnabled->isChecked(); + if (partsMask & FileAndLinePart) { data->lineNumber = m_ui.lineEditLineNumber->text().toInt(); data->useFullPath = m_ui.checkBoxUseFullPath->isChecked(); @@ -207,6 +209,8 @@ void BreakpointDialog::getParts(unsigned partsMask, BreakpointParameters *data) void BreakpointDialog::setParts(unsigned mask, const BreakpointParameters &data) { + m_ui.checkBoxEnabled->setChecked(data.enabled); + if (mask & FileAndLinePart) { m_ui.pathChooserFileName->setPath(data.fileName); m_ui.lineEditLineNumber->setText(QString::number(data.lineNumber)); diff --git a/src/plugins/debugger/debuggerrunner.cpp b/src/plugins/debugger/debuggerrunner.cpp index 5ba3a1f2f51dc4451a356aa3c9a79a7431eb889d..c0fd349492e2424cfc61ad50dede5eb2b8e23c80 100644 --- a/src/plugins/debugger/debuggerrunner.cpp +++ b/src/plugins/debugger/debuggerrunner.cpp @@ -460,8 +460,6 @@ static DebuggerEngineType engineForToolChain(int toolChainType) case ProjectExplorer::ToolChain_RVCT_ARMV5_GNUPOC: case ProjectExplorer::ToolChain_GCCE_GNUPOC: case ProjectExplorer::ToolChain_GCC_MAEMO: - if (getenv("QTC_LLDB_GUEST")) - return LldbEngineType; #ifdef WITH_LLDB // lldb override if (Core::ICore::instance()->settings()->value("LLDB/enabled").toBool()) @@ -503,6 +501,12 @@ void DebuggerRunControl::createEngine(const DebuggerStartParameters &startParams } } + if (getenv("QTC_LLDB_GUEST")) { + engineType = LldbEngineType; + sp.executable = sp.processArgs; + qDebug() << "DEBUGGING" << sp.executable; + } + // Fixme: 1 of 3 testing hacks. if (sp.processArgs.startsWith(__("@tcf@ "))) engineType = GdbEngineType; @@ -561,8 +565,8 @@ void DebuggerRunControl::createEngine(const DebuggerStartParameters &startParams break; case LldbEngineType: d->m_engine = createLldbEngine(sp); - case NoEngineType: - case AllEngineTypes: + case NoEngineType: + case AllEngineTypes: break; } diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index e2aa312e431818ad721d2517f4ce4623e24098cd..e7f5057d337b9bdd822906c70d47a47ba8ec1045 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -1809,6 +1809,7 @@ void GdbEngine::continueInferiorInternal() void GdbEngine::autoContinueInferior() { + resetLocation(); continueInferiorInternal(); showStatusMessage(tr("Continuing after temporary stop..."), 1000); }