diff options
author | Bartlomiej Moskal <bartlomiej.moskal@qt.io> | 2023-02-24 08:34:37 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2023-03-03 14:26:38 +0000 |
commit | 9a8f29832c047ee83cac26ab40569e35a537981b (patch) | |
tree | 7ce1f73de69d340ad20caf058152f1eb2f7636f0 /examples/webview/minibrowser/doc/images | |
parent | 3edc28dc5ddcd0d8aa7e9d14527035df8b4f0af2 (diff) |
Android: Fix for possible thread deadlock6.4
QtAndroidWebViewController constructor blocks a qGuiThread until
the WebView is created and configured in UI thread. Such an
implementation can easily lead to the deadlock (For example in the case
of handling InputConnection - it is exactly the opposite. UI thread is
blocked and waits for handling event by qGuiThread). That's why we need
to lock AndroidDeadlockProtector before blocking qGuiThread.
This implementation resolves potential deadlock using
AndroidDeadlockProtector. If protector cannot by locked, qGuiThread will
handle events to make it possible.
Fixes: QTBUG-82810
Change-Id: I71aaea9ceb7c41b818ed533ce41c70b5c0e8d7de
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
(cherry picked from commit 26c2569b73d884e3130705c77b8f2920f5645029)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'examples/webview/minibrowser/doc/images')
0 files changed, 0 insertions, 0 deletions