diff --git a/src/corelib/thread/qthread.cpp b/src/corelib/thread/qthread.cpp index 472c6f67957..f784bf5cb6d 100644 --- a/src/corelib/thread/qthread.cpp +++ b/src/corelib/thread/qthread.cpp @@ -778,7 +778,9 @@ QThreadData *QThreadData::current(bool createIfNecessary) if (!data && createIfNecessary) { data = new QThreadData; data->thread = new QAdoptedThread(data); + data->threadId.store(Qt::HANDLE(data->thread)); data->deref(); + data->isAdopted = true; if (!QCoreApplicationPrivate::theMainThread) QCoreApplicationPrivate::theMainThread = data->thread.load(); }