From 0b7f80de21e617cc44d8a725e6aa9a0c4f406e01 Mon Sep 17 00:00:00 2001 From: Christiaan Janssen <christiaan.janssen@digia.com> Date: Tue, 19 Feb 2013 14:25:50 +0100 Subject: [PATCH] QmlProfiler: avoid false positives in binding loops It happens when anonymous bindings are involved. Change-Id: Id0107040565351bf857bff7357a76bc82f0fd093 Reviewed-by: Kai Koehne <kai.koehne@digia.com> --- src/plugins/qmlprofiler/qmlprofilerdatamodel.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plugins/qmlprofiler/qmlprofilerdatamodel.cpp b/src/plugins/qmlprofiler/qmlprofilerdatamodel.cpp index f611b9acde8..27a707a4e61 100644 --- a/src/plugins/qmlprofiler/qmlprofilerdatamodel.cpp +++ b/src/plugins/qmlprofiler/qmlprofilerdatamodel.cpp @@ -174,7 +174,6 @@ public: void prepareForDisplay(); void linkStartsToEnds(); void linkEndsToStarts(); - bool checkBindingLoop(QmlRangeEventData *from, QmlRangeEventData *current, QList<QmlRangeEventData *>visited); // stats @@ -1246,7 +1245,8 @@ void QmlProfilerDataModel::QmlProfilerDataModelPrivate::findBindingLoops(qint64 stack << inTimeEvent; stackRefs << currentEvent; - if (loopDetected) { + // skip loops if bindings are anonymous + if (loopDetected && !currentEvent->location.filename.isEmpty()) { if (i >= fromIndex && i <= toIndex) { // for the statistics currentEvent->isBindingLoop = true; -- GitLab