aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Brasser <michael.brasser@live.com>2016-10-14 07:52:24 -0500
committerMichael Brasser <michael.brasser@live.com>2016-11-15 03:50:22 +0000
commit8ff69297eeddc3f5650c4cc5517c7e2eafaf6c59 (patch)
treefa98e54704e51cd5e7732aa5491f18856e81a7db /src
parent291223876bb190ca4b5a07cf8f605c7bf88d7ab6 (diff)
Setting Connection's target to null should disconnect implicit target
Change-Id: Id7c8c7080e6db8bb6d09c1df13cddaef047cf611 Task-number: QTBUG-56499 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/qml/types/qqmlconnections.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/qml/types/qqmlconnections.cpp b/src/qml/types/qqmlconnections.cpp
index 6a93410ecb..8e14589100 100644
--- a/src/qml/types/qqmlconnections.cpp
+++ b/src/qml/types/qqmlconnections.cpp
@@ -159,9 +159,9 @@ private:
void QQmlConnections::setTarget(QObject *obj)
{
Q_D(QQmlConnections);
- d->targetSet = true; // even if setting to 0, it is *set*
- if (d->target == obj)
+ if (d->targetSet && d->target == obj)
return;
+ d->targetSet = true; // even if setting to 0, it is *set*
foreach (QQmlBoundSignal *s, d->boundsignals) {
// It is possible that target is being changed due to one of our signal
// handlers -> use deleteLater().