summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qobject.cpp
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@theqtcompany.com>2016-04-05 17:01:11 +0200
committerErik Verbruggen <erik.verbruggen@theqtcompany.com>2016-04-06 12:20:05 +0000
commit9d0dbc32dd3c37c1199115762fab6ac1cedb9ce3 (patch)
tree0e17677a2b457908e93291d383096333be891d1f /src/corelib/kernel/qobject.cpp
parent1735ca57a8c32e166f24cd8d39abc6583bbebf00 (diff)
Move QThread::currentThreadId() down to the loop using it.
This prevents the call from happening in case no C++ signal is connected. Change-Id: I32027df446391f3fc979528738a106223042d632 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Diffstat (limited to 'src/corelib/kernel/qobject.cpp')
-rw-r--r--src/corelib/kernel/qobject.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp
index e3e536d7e1..fc5e6abf00 100644
--- a/src/corelib/kernel/qobject.cpp
+++ b/src/corelib/kernel/qobject.cpp
@@ -3628,8 +3628,6 @@ void QMetaObject::activate(QObject *sender, int signalOffset, int local_signal_i
argv ? argv : empty_argv);
}
- Qt::HANDLE currentThreadId = QThread::currentThreadId();
-
{
QMutexLocker locker(signalSlotLock(sender));
struct ConnectionListsRef {
@@ -3668,6 +3666,8 @@ void QMetaObject::activate(QObject *sender, int signalOffset, int local_signal_i
else
list = &connectionLists->allsignals;
+ Qt::HANDLE currentThreadId = QThread::currentThreadId();
+
do {
QObjectPrivate::Connection *c = list->first;
if (!c) continue;