From f6685a271677429ed2dac4232421a7bb18a78e0c Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Tue, 17 May 2022 17:33:39 +0200 Subject: Make all loads of QAtomicPointer QObjectPrivate::threadData explicit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replace implicit conversions from QAtomicPointer → T* with the equivalent, but explicit, loadAcquire(). This is in preparation of deprecating the implicit QAtomic ↔ T conversions. Change-Id: I6c8476a705c3996ef724dd63b58d9526d1a39af7 Reviewed-by: Thiago Macieira --- src/corelib/kernel/qobject.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/corelib/kernel/qobject.cpp') diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index e438c115135..63dfb1cba05 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -3674,7 +3674,7 @@ QObjectPrivate::Connection *QMetaObjectPrivate::connect(const QObject *sender, c->sender = s; c->signal_index = signal_index; c->receiver.storeRelaxed(r); - QThreadData *td = r->d_func()->threadData; + QThreadData *td = r->d_func()->threadData.loadAcquire(); td->ref(); c->receiverThreadData.storeRelaxed(td); c->method_relative = method_index; @@ -5304,7 +5304,7 @@ QMetaObject::Connection QObjectPrivate::connectImpl(const QObject *sender, int s std::unique_ptr c{new QObjectPrivate::Connection}; c->sender = s; c->signal_index = signal_index; - QThreadData *td = r->d_func()->threadData; + QThreadData *td = r->d_func()->threadData.loadAcquire(); td->ref(); c->receiverThreadData.storeRelaxed(td); c->receiver.storeRelaxed(r); -- cgit v1.2.3