summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/android
diff options
context:
space:
mode:
authorPaul Olav Tvete <paul.tvete@digia.com>2014-08-27 10:56:53 +0200
committerPaul Olav Tvete <paul.tvete@digia.com>2014-08-27 12:22:07 +0200
commit4c6ebe5f9e4ddc0d799a0f2bf4aef9f7e48e0dfb (patch)
treed868c95f10e2fd8049d2bf3a2ed9071604bd187d /src/plugins/platforms/android
parentf2e4ff4fd484d49e7338c9a2c5882782fe8f081b (diff)
Android quickfix: Avoid crash at shutdown
Qt Quick does a processEvents() at shutdown. On some versions of Android, this can trigger a getTextAfterCursor() after QGuiApplication shutdown. This patch still has a theoretical race condition, but should reduce the crash probablity to practically zero. [ChangeLog][Android] Fixed bug on some devices where the application would crash at shutdown if the virtual keyboard was open. Task-number: QTBUG-40957 Change-Id: Iefcc10a77e3d506c32ea151c27a3e87a7be40e68 Reviewed-by: BogDan Vatra <bogdan@kde.org>
Diffstat (limited to 'src/plugins/platforms/android')
-rw-r--r--src/plugins/platforms/android/qandroidinputcontext.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/plugins/platforms/android/qandroidinputcontext.cpp b/src/plugins/platforms/android/qandroidinputcontext.cpp
index 5d47d2fda4..acd7a42ba2 100644
--- a/src/plugins/platforms/android/qandroidinputcontext.cpp
+++ b/src/plugins/platforms/android/qandroidinputcontext.cpp
@@ -995,8 +995,10 @@ Q_INVOKABLE QVariant QAndroidInputContext::queryFocusObjectUnsafe(Qt::InputMetho
QVariant QAndroidInputContext::queryFocusObjectThreadSafe(Qt::InputMethodQuery query, QVariant argument)
{
- bool inMainThread = qGuiApp->thread() == QThread::currentThread();
QVariant retval;
+ if (!qGuiApp)
+ return retval;
+ bool inMainThread = qGuiApp->thread() == QThread::currentThread();
QMetaObject::invokeMethod(this, "queryFocusObjectUnsafe",
inMainThread ? Qt::DirectConnection : Qt::BlockingQueuedConnection,