summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qobject.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/corelib/kernel/qobject.cpp')
-rw-r--r--src/corelib/kernel/qobject.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp
index 257575e141..7b9689f1cf 100644
--- a/src/corelib/kernel/qobject.cpp
+++ b/src/corelib/kernel/qobject.cpp
@@ -2404,8 +2404,7 @@ int QObject::receivers(const char *signal) const
{
Q_D(const QObject);
int receivers = 0;
- QObjectPrivate::ConnectionData *cd = d->connections.load();
- if (signal && cd) {
+ if (signal) {
QByteArray signal_name = QMetaObject::normalizedSignature(signal);
signal = signal_name;
#ifndef QT_NO_DEBUG
@@ -2429,8 +2428,9 @@ int QObject::receivers(const char *signal) const
signal_index);
}
+ QObjectPrivate::ConnectionData *cd = d->connections.load();
QBasicMutexLocker locker(signalSlotLock(this));
- if (signal_index < cd->signalVector.count()) {
+ if (cd && signal_index < cd->signalVector.count()) {
const QObjectPrivate::Connection *c =
cd->signalVector.at(signal_index).first;
while (c) {