summaryrefslogtreecommitdiffstats
path: root/src/corelib/thread
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2011-06-23 11:11:35 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2011-06-23 11:11:35 (GMT)
commit2cb201c82a73aab97b5a46ab6e63b61c303a3aff (patch)
tree778b355fc995be1f40712c9a7eb1ea984b5ff405 /src/corelib/thread
parent95b40f3f5f0c945e5052c6421861174771f29531 (diff)
parenta3f97ba985c80b147bcc902416304544f1d0ec58 (diff)
downloadQt-2cb201c82a73aab97b5a46ab6e63b61c303a3aff.zip
Qt-2cb201c82a73aab97b5a46ab6e63b61c303a3aff.tar.gz
Qt-2cb201c82a73aab97b5a46ab6e63b61c303a3aff.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: QTBUG-17776, reporting terminated threads as not running on Symbian Splitview - Auto-translation rules changed
Diffstat (limited to 'src/corelib/thread')
-rw-r--r--src/corelib/thread/qthread.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/corelib/thread/qthread.cpp b/src/corelib/thread/qthread.cpp
index 2cdaca0..2f96920 100644
--- a/src/corelib/thread/qthread.cpp
+++ b/src/corelib/thread/qthread.cpp
@@ -431,6 +431,12 @@ bool QThread::isRunning() const
{
Q_D(const QThread);
QMutexLocker locker(&d->mutex);
+#ifdef Q_OS_SYMBIAN
+ // app shutdown on Symbian can terminate threads and invalidate their stacks without notification,
+ // check the thread is still alive.
+ if (d->data->symbian_thread_handle.Handle() && d->data->symbian_thread_handle.ExitType() != EExitPending)
+ return false;
+#endif
return d->running;
}