aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/debugger/cdb/cdbdebugengine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/debugger/cdb/cdbdebugengine.cpp')
-rw-r--r--src/plugins/debugger/cdb/cdbdebugengine.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/plugins/debugger/cdb/cdbdebugengine.cpp b/src/plugins/debugger/cdb/cdbdebugengine.cpp
index ccaba94aff..9de6dc9f22 100644
--- a/src/plugins/debugger/cdb/cdbdebugengine.cpp
+++ b/src/plugins/debugger/cdb/cdbdebugengine.cpp
@@ -1268,6 +1268,8 @@ void CdbDebugEngine::selectThread(int index)
void CdbDebugEngine::attemptBreakpointSynchronization()
{
+ if (!m_d->m_hDebuggeeProcess) // Sometimes called from the breakpoint Window
+ return;
QString errorMessage;
if (!m_d->attemptBreakpointSynchronization(&errorMessage))
warning(msgFunctionFailed(Q_FUNC_INFO, errorMessage));
@@ -1301,10 +1303,15 @@ bool CdbDebugEnginePrivate::attemptBreakpointSynchronization(QString *errorMessa
return true;
}
- return CDBBreakPoint::synchronizeBreakPoints(m_cif.debugControl,
+ QStringList warnings;
+ const bool ok = CDBBreakPoint::synchronizeBreakPoints(m_cif.debugControl,
m_cif.debugSymbols,
m_debuggerManagerAccess->breakHandler(),
- errorMessage);
+ errorMessage, &warnings);
+ if (const int warningsCount = warnings.size())
+ for (int w = 0; w < warningsCount; w++)
+ m_engine->warning(warnings.at(w));
+ return ok;
}
void CdbDebugEngine::reloadDisassembler()