Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
6.4.0, 6.5
-
None
-
-
c68e5d095 (dev), 4c92565f0 (dev), 703db341e (6.4), 1c5c34385 (6.4), bcc8988b4 (6.5), c2556321d (6.5), 574fabf40 (tqtc/lts-6.2), f908f6591 (tqtc/lts-6.2)
-
Foundation Sprint 72, Foundation Sprint 73
Description
In the attached video the UI is blocked for a few seconds at the following video times:
00:14
00:26
00:35
00:40
The problem seems to appear when disconnectFromDevice intersects with (unfinished?) service discovery.
Steps to reproduce:
- Make sure that the Bluetooth device is paired with Windows but out of reach/offline
so that buffered Bluetooth device information is used.
- Start the lowenergyscanner example app.
- Click on the offline Bluetooth device and select a service as shown in the video.
- Go back to the main device list. The UI will now randomly (not always) block for a short time.
In very rare cases I can also trigger a crash/dead lock in when exiting:
1 ZwWaitForAlertByThreadId ntdll 0x7fff098b0ab4
2 RtlWaitOnAddress ntdll 0x7fff098738ad
3 RtlWaitOnAddress ntdll 0x7fff09873762
4 RtlWaitOnAddress ntdll 0x7fff09873473
5 WaitOnAddress KERNELBASE 0x7fff075edaaf
6 QtWindowsFutex::futexWait<QBasicAtomicPointer<QMutexPrivate>> qfutex_p.h 124 0x7ffe455dd3d6
7 QBasicMutex::lockInternal qmutex.cpp 615 0x7ffe455dcac9
8 QBasicMutex::lock qmutex.h 77 0x7ffe4506cd91
9 std::unique_lock<QMutex>::unique_lock<QMutex> mutex 138 0x7ffe451a3b07
10 `anonymous namespace'::qt_unique_lock<QMutex,std::unique_lock<QMutex>> qlocking_p.h 67 0x7ffe451a27a6
11 QCoreApplicationPrivate::lockThreadPostEventList qcoreapplication.cpp 1482 0x7ffe4519a18e
12 QCoreApplication::removePostedEvents qcoreapplication.cpp 1835 0x7ffe4519537e
13 QObjectPrivate::~QObjectPrivate qobject.cpp 191 0x7ffe4526494b
14 QObjectPrivate::`vector deleting destructor' Qt6Cored 0x7ffe4527a817
15 QScopedPointerDeleter<QObjectData>::cleanup qscopedpointer.h 24 0x7ffe4527c9ea
16 QScopedPointer<QObjectData,QScopedPointerDeleter<QObjectData>>::~QScopedPointer<QObjectData,QScopedPointerDeleter<QObjectData>> qscopedpointer.h 81 0x7ffe45279231
17 QObject::~QObject qobject.cpp 1108 0x7ffe4525d1e7
18 QWinRTBluetoothDeviceDiscoveryWorker::~QWinRTBluetoothDeviceDiscoveryWorker qbluetoothdevicediscoveryagent_winrt.cpp 322 0x7ffe6d7770c5
19 QWinRTBluetoothDeviceDiscoveryWorker::`scalar deleting destructor' Qt6Bluetoothd 0x7ffe6d7a14e8
20 std::_Destroy_in_place<QWinRTBluetoothDeviceDiscoveryWorker> xmemory 313 0x7ffe6d786e96
21 std::_Ref_count_obj2<QWinRTBluetoothDeviceDiscoveryWorker>::_Destroy memory 2048 0x7ffe6d7a5deb
22 std::_Ref_count_base::_Decref memory 1110 0x7ffe6d7a5963
23 std::_Ptr_base<QWinRTBluetoothDeviceDiscoveryWorker>::_Decref memory 1341 0x7ffe6d7a5914
24 std::shared_ptr<QWinRTBluetoothDeviceDiscoveryWorker>::~shared_ptr<QWinRTBluetoothDeviceDiscoveryWorker> memory 1629 0x7ffe6d79a7c4
25 std::shared_ptr<QWinRTBluetoothDeviceDiscoveryWorker>::`scalar deleting destructor' Qt6Bluetoothd 0x7ffe6d7a13a8
26 <lambda_b0f3cc96497b7acd339f90a19b66bee0>::operator() qmetatype.h 2327 0x7ffe6d79fad0
27 <lambda_b0f3cc96497b7acd339f90a19b66bee0>::<lambda_invoker_cdecl> qmetatype.h 2327 0x7ffe6d773670
28 QMetaType::destroy qmetatype.cpp 615 0x7ffe451f028b
29 QMetaCallEvent::~QMetaCallEvent qobject.cpp 594 0x7ffe45266e4a
30 QMetaCallEvent::`vector deleting destructor' Qt6Cored 0x7ffe45068997
31 QCoreApplicationPrivate::cleanupThreadData qcoreapplication.cpp 472 0x7ffe45199fb5
32 QGuiApplicationPrivate::~QGuiApplicationPrivate qguiapplication.cpp 1695 0x7ffe52c7557f
33 QApplicationPrivate::~QApplicationPrivate qapplication.cpp 132 0x7ffe662bcb1b
34 QApplicationPrivate::`vector deleting destructor' Qt6Widgetsd 0x7ffe662dd95a
35 QScopedPointerDeleter<QObjectData>::cleanup qscopedpointer.h 24 0x7ffe4527c9ea
36 QScopedPointer<QObjectData,QScopedPointerDeleter<QObjectData>>::~QScopedPointer<QObjectData,QScopedPointerDeleter<QObjectData>> qscopedpointer.h 81 0x7ffe45279231
37 QObject::~QObject qobject.cpp 1108 0x7ffe4525d1e7
38 QCoreApplication::~QCoreApplication qcoreapplication.cpp 878 0x7ffe45193f21
39 QGuiApplication::~QGuiApplication qguiapplication.cpp 687 0x7ffe52c727c8
40 QApplication::~QApplication qapplication.cpp 704 0x7ffe662b6004
41 main main.cpp 57 0x7ff71f2e6e68
42 WinMain qtentrypoint_win.cpp 50 0x7ff71f772bb2
43 invoke_main exe_common.inl 107 0x7ff71f7709a2
44 __scrt_common_main_seh exe_common.inl 288 0x7ff71f77088e
45 __scrt_common_main exe_common.inl 331 0x7ff71f77074e
46 WinMainCRTStartup exe_winmain.cpp 17 0x7ff71f770a3e
47 BaseThreadInitThunk KERNEL32 0x7fff078774b4
48 RtlUserThreadStart ntdll 0x7fff098626a1
Attachments
Issue Links
- relates to
-
QTBUG-109587 Refactor QLowEnergyController backend for Windows
-
- Reported
-