diff --git a/src/corelib/thread/qthread.cpp b/src/corelib/thread/qthread.cpp index cad7a140176..20b1f011734 100644 --- a/src/corelib/thread/qthread.cpp +++ b/src/corelib/thread/qthread.cpp @@ -844,14 +844,14 @@ bool QThread::event(QEvent *event) void QThread::requestInterruption() { - Q_D(QThread); - QMutexLocker locker(&d->mutex); - if (!d->running || d->finished || d->isInFinish) - return; if (this == QCoreApplicationPrivate::theMainThread) { qWarning("QThread::requestInterruption has no effect on the main thread"); return; } + Q_D(QThread); + QMutexLocker locker(&d->mutex); + if (!d->running || d->finished || d->isInFinish) + return; d->interruptionRequested = true; }