summaryrefslogtreecommitdiffstats
path: root/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
diff options
context:
space:
mode:
authorJanne Anttila <janne.anttila@digia.com>2009-06-03 09:06:54 +0300
committerJanne Anttila <janne.anttila@digia.com>2009-06-03 09:06:54 +0300
commitba105741867dd96a9d58dcfcb78afef60e611bd6 (patch)
tree096c31e7639e8a7ebff0ec8224c6d565d67e1276 /src/gui/inputmethod/qcoefepinputcontext_s60.cpp
parent4dea80184af6eb3316b5765d9b2ebee2befdc64f (diff)
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/gui/inputmethod/qcoefepinputcontext_s60.cpp')
-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 8612e55b31..e3427ec1ee 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;