diff options
author | Ivan Solovev <ivan.solovev@qt.io> | 2023-12-14 14:34:14 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2023-12-15 11:58:53 +0000 |
commit | 0e8bd451adef1ce67b1260fc0062c5a7e0c2ce3e (patch) | |
tree | a0c0d2045e5ef6d0b25083828226fe8efe61bcf0 /examples/bluetooth/heartrate-game/GamePage.qml | |
parent | 3593b019e8c20d1fcae28d88448fc87fb99e7c3b (diff) |
Bluetooth Windows: fix segfault in COM de-init
While doing COM initialization/deinitialization, we always implicitly
assumed that QCoreApplication instance is available.
However, if the Bluetooth objects are re-parented to the main
application, the QCoreApplication instance will already be removed by
the time we want to delete the Bluetooth object (and call COM de-init).
Fix it by caching the main application's thread, and using it instead
of QCoreApplication::instance()->thread() in the mainThreadCoUninit()
helper method.
This commit still assumes that all Bluetooth objects are created
*after* the main QCoreApplication instance.
Amends 340b84a5578f78d7a399e369e900ac991d9e0da2.
Fixes: QTBUG-119063
Pick-to: 6.6 6.5 6.2
Change-Id: I450e4e14039ca27fcfd1f3f131789b049e1edb03
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
(cherry picked from commit f762e9b646e240d9e8d3d7de928ae1333227c8a0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'examples/bluetooth/heartrate-game/GamePage.qml')
0 files changed, 0 insertions, 0 deletions