summaryrefslogtreecommitdiffstats
path: root/src/corelib/thread
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2011-06-16 17:16:21 +1000
committerQt Continuous Integration System <qt-info@nokia.com>2011-06-16 17:16:21 +1000
commitc390312f8fbea14ac4df0c5185ca814054f448d8 (patch)
tree3d527aaf0d58f4a817463aff43bf4cbb56dc9721 /src/corelib/thread
parent40aafa7e692bcb8f62ab564cfb5571685671f70b (diff)
parent368b834f2af5285b7185eb0957d70a6a8a155d61 (diff)
Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-symbian-staging into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-symbian-staging: DEF file updates for Symbian QTBUG-19883 Adding top level TRAP for QThreads on Symbian
Diffstat (limited to 'src/corelib/thread')
-rw-r--r--src/corelib/thread/qthread_symbian.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/corelib/thread/qthread_symbian.cpp b/src/corelib/thread/qthread_symbian.cpp
index c515ae6d17..46339a69eb 100644
--- a/src/corelib/thread/qthread_symbian.cpp
+++ b/src/corelib/thread/qthread_symbian.cpp
@@ -335,7 +335,15 @@ void *QThreadPrivate::start(void *arg)
createEventDispatcher(data);
emit thr->started();
- thr->run();
+ TRAPD(err, {
+ try {
+ thr->run();
+ } catch (const std::exception& ex) {
+ qWarning("QThreadPrivate::start: Thread exited on exception %s", ex.what());
+ }
+ });
+ if (err)
+ qWarning("QThreadPrivate::start: Thread exited on leave %d", err);
QThreadPrivate::finish(arg);