diff options
author | Olivier Goffart <olivier.goffart@nokia.com> | 2010-11-19 08:57:18 (GMT) |
---|---|---|
committer | Olivier Goffart <olivier.goffart@nokia.com> | 2010-11-22 09:24:34 (GMT) |
commit | 202433ee1fd377ac36dc55fb466b9fc616b4d4fd (patch) | |
tree | aa861dba129b686868ac58e01371a851c630a754 /src | |
parent | 98337a5f32e58c0ea14e2b86b9fe8dcb22bfa4e3 (diff) | |
download | Qt-202433ee1fd377ac36dc55fb466b9fc616b4d4fd.zip Qt-202433ee1fd377ac36dc55fb466b9fc616b4d4fd.tar.gz Qt-202433ee1fd377ac36dc55fb466b9fc616b4d4fd.tar.bz2 |
QThread::exec(): Fix possibility to enter several time the event loop
If one call exit() before calling exec(), this should prevent the
event loop from starting once, but later calls to exec() should work.
This is a regression against Qt 4.6 introduced when fixing QTBUG-1184
Task-number: QTBUG-15378
Reviewed-by: Joao
Reviewed-by: Brad
Diffstat (limited to 'src')
-rw-r--r-- | src/corelib/thread/qthread.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/corelib/thread/qthread.cpp b/src/corelib/thread/qthread.cpp index 69b70cb..6fb182b 100644 --- a/src/corelib/thread/qthread.cpp +++ b/src/corelib/thread/qthread.cpp @@ -482,8 +482,10 @@ int QThread::exec() Q_D(QThread); QMutexLocker locker(&d->mutex); d->data->quitNow = false; - if (d->exited) + if (d->exited) { + d->exited = false; return d->returnCode; + } locker.unlock(); QEventLoop eventLoop; |