aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorhjk <hjk121@nokiamail.com>2014-03-17 18:27:26 +0100
committerhjk <hjk121@nokiamail.com>2014-03-18 10:34:38 +0100
commit6206dc8b64051416faad4f329c496bd14f1b00c0 (patch)
treed1dc8d7bcb9b9543046b87bbbdc4831654edb4c3 /src
parent5d1bc3859d9fbb4e2fd4d803aeec97e7ab1bed66 (diff)
Debugger: Be more verbose about unhandled breakpoints
Especially for mixed debugging getting the ID explicitly gives hints which part of the combined engine fails. Change-Id: Iab4b54d6e9fb8d4afd3df0855861511bc06454c1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/debugger/debuggerrunner.cpp24
1 files changed, 13 insertions, 11 deletions
diff --git a/src/plugins/debugger/debuggerrunner.cpp b/src/plugins/debugger/debuggerrunner.cpp
index 91bd58cc1c..781602ddf0 100644
--- a/src/plugins/debugger/debuggerrunner.cpp
+++ b/src/plugins/debugger/debuggerrunner.cpp
@@ -193,26 +193,28 @@ void DebuggerRunControl::start()
}
if (d->m_engine->startParameters().startMode == StartInternal) {
+ QStringList unhandledIds;
foreach (const BreakpointModelId &id, debuggerCore()->breakHandler()->allBreakpointIds()) {
if (d->m_engine->breakHandler()->breakpointData(id).enabled
- && !d->m_engine->acceptsBreakpoint(id)) {
-
- QString warningMessage =
- DebuggerPlugin::tr("Some breakpoints cannot be handled by the debugger "
- "languages currently active, and will be ignored.");
+ && !d->m_engine->acceptsBreakpoint(id))
+ unhandledIds.append(id.toString());
+ }
+ if (!unhandledIds.isEmpty()) {
+ QString warningMessage =
+ DebuggerPlugin::tr("Some breakpoints cannot be handled by the debugger "
+ "languages currently active, and will be ignored.\n"
+ "Affected are breakpoints %1")
+ .arg(unhandledIds.join(QLatin1String(", ")));
- debuggerCore()->showMessage(warningMessage, LogWarning);
+ debuggerCore()->showMessage(warningMessage, LogWarning);
- static bool checked = true;
- if (!checked)
- break;
+ static bool checked = true;
+ if (checked)
CheckableMessageBox::information(Core::ICore::mainWindow(),
tr("Debugger"),
warningMessage,
tr("&Show this message again."),
&checked, QDialogButtonBox::Ok);
- break;
- }
}
}