From a33db02a3689ce19423cb3a2c66b651f97f84d8a Mon Sep 17 00:00:00 2001 From: David Schulz Date: Wed, 20 May 2015 13:57:06 +0200 Subject: [PATCH] Debugger: Optimize insert watch item. Change-Id: If15afbbc7bcf33367755cfd61d47670a28038e6f Reviewed-by: hjk --- src/plugins/debugger/watchhandler.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp index a77b2d57387..0f3e8672d8b 100644 --- a/src/plugins/debugger/watchhandler.cpp +++ b/src/plugins/debugger/watchhandler.cpp @@ -1241,15 +1241,15 @@ void WatchHandler::insertItem(WatchItem *item) void WatchModel::insertItem(WatchItem *item) { - WatchItem *existing = findItem(item->iname); - if (existing) + WatchItem *parent = findItem(parentName(item->iname)); + QTC_ASSERT(parent, return); + + if (WatchItem *existing = parent->findItem(item->iname)) removeItem(existing); //item->walkTree([item](TreeItem *sub) { sub->sortChildren(&watchItemSorter); }); item->sortChildren(&watchItemSorter); - WatchItem *parent = findItem(parentName(item->iname)); - QTC_ASSERT(parent, return); const int row = findInsertPosition(parent->children(), item); parent->insertChild(row, item);