blockSignals should block QML signal emission.
authorMichael Brasser <michael.brasser@nokia.com>
Mon, 6 Aug 2012 01:52:29 +0000 (11:52 +1000)
committerQt by Nokia <qt-info@nokia.com>
Sun, 26 Aug 2012 09:08:42 +0000 (11:08 +0200)
Change-Id: Ief35f3ca326173a87240e3cb558e47f721bd04b7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
src/corelib/kernel/qobject.cpp

index 0298e53..84c4653 100644 (file)
@@ -3325,13 +3325,13 @@ void QMetaObject::activate(QObject *sender, int signalOffset, int local_signal_i
     if (!sender->d_func()->isSignalConnected(signal_index))
         return; // nothing connected to these signals, and no spy
 
+    if (sender->d_func()->blockSig)
+        return;
+
     if (sender->d_func()->declarativeData && QAbstractDeclarativeData::signalEmitted)
         QAbstractDeclarativeData::signalEmitted(sender->d_func()->declarativeData, sender, 
                                                 signal_index, argv);
 
-    if (sender->d_func()->blockSig)
-        return;
-
     void *empty_argv[] = { 0 };
     if (qt_signal_spy_callback_set.signal_begin_callback != 0) {
         qt_signal_spy_callback_set.signal_begin_callback(sender, signal_index,