diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp index 8b6215f7db8..7f366cfacf7 100644 --- a/src/plugins/debugger/watchhandler.cpp +++ b/src/plugins/debugger/watchhandler.cpp @@ -1330,8 +1330,9 @@ void WatchHandler::clearWatches() { if (m_watcherNames.isEmpty()) return; - foreach (WatchItem *item, m_watchers->rootItem()->children) - m_watchers->destroyItem(item); + const QList watches = m_watchers->rootItem()->children; + for (int i = watches.size() - 1; i >= 0; i--) + m_watchers->destroyItem(watches.at(i)); m_watcherNames.clear(); watcherCounter = 0; updateWatchersWindow(); diff --git a/src/plugins/debugger/watchwindow.cpp b/src/plugins/debugger/watchwindow.cpp index 4f9d9d7f66b..2af4485b459 100644 --- a/src/plugins/debugger/watchwindow.cpp +++ b/src/plugins/debugger/watchwindow.cpp @@ -379,7 +379,7 @@ void WatchWindow::contextMenuEvent(QContextMenuEvent *ev) QAction *actRemoveWatchExpression = new QAction(removeWatchActionText(exp), &menu); actRemoveWatchExpression->setEnabled( (canHandleWatches || state == DebuggerNotReady) && !exp.isEmpty()); - QAction *actRemoveWatches = new QAction(tr("Clear Watch Items"), &menu); + QAction *actRemoveWatches = new QAction(tr("Remove All Watch Items"), &menu); actRemoveWatches->setEnabled(!WatchHandler::watcherNames().isEmpty()); if (m_type == LocalsType)