summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJanne Anttila <janne.anttila@digia.com>2009-06-03 06:06:54 (GMT)
committerJanne Anttila <janne.anttila@digia.com>2009-06-03 06:06:54 (GMT)
commitba105741867dd96a9d58dcfcb78afef60e611bd6 (patch)
tree096c31e7639e8a7ebff0ec8224c6d565d67e1276 /src
parent4dea80184af6eb3316b5765d9b2ebee2befdc64f (diff)
downloadQt-ba105741867dd96a9d58dcfcb78afef60e611bd6.zip
Qt-ba105741867dd96a9d58dcfcb78afef60e611bd6.tar.gz
Qt-ba105741867dd96a9d58dcfcb78afef60e611bd6.tar.bz2
Fix to qapplication::setActiveWindow autotest case in Symbian.
In case the application is closing, we should not call process events since event dispatcher is already deleted. Calling processEvents caused application to oanic with KERN-EXEC 3 i.e. access violation.
Diffstat (limited to 'src')
-rw-r--r--src/gui/inputmethod/qcoefepinputcontext_s60.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
index 8612e55..e3427ec 100644
--- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
+++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
@@ -13,6 +13,7 @@
#include "qcoefepinputcontext_p.h"
#include <qapplication.h>
+#include <private/qapplication_p.h>
#include <qtextformat.h>
#include <fepitfr.h>
@@ -59,9 +60,12 @@ QCoeFepInputContext::~QCoeFepInputContext()
// This is to make sure that the FEP manager "forgets" about us,
// otherwise we may get callbacks even after we're destroyed.
// The call is asynchronous though, so we must spin the event loop
- // to make sure it gets detected.
+ // to make sure it gets detected. However we will not spin eventloop
+ // in case that app is closing, since eventDispatcher is already deleted.
CCoeEnv::Static()->InputCapabilitiesChanged();
- QApplication::processEvents();
+ if(!QApplicationPrivate::is_app_closing) {
+ QApplication::processEvents();
+ }
if (m_fepState)
delete m_fepState;