Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.9.2
-
None
-
Qt version on all devices: Qt 5.9.2
Embedded device: i.mx6 with Yocto Pyro, Bluez version 5.47
Desktop device: (Unable to reproduce the error, Bluez version 5.43
Description
Way to reproduce error
- Connect to a non operational BLE device (powered off)
- wait for 1 sec
- Disconnect from device
What happens
- Segmentation fault
Callstack
1 QLowEnergyControllerPrivate::disconnectFromDevice qlowenergycontroller_bluez.cpp 729 0x75305534 2 BluetoothGenericDevice::disconnectFromDevice BluetoothGenericDevice.cpp 228 0x76cff184 3 BluetoothGenericDevice::deviceDisconnect BluetoothGenericDevice.cpp 45 0x76cfd814 4 BluetoothGenericDevice::qt_static_metacall moc_BluetoothGenericDevice.cpp 208 0x76d2daf0 5 BluetoothGenericDevice::qt_metacall moc_BluetoothGenericDevice.cpp 334 0x76d2e294 6 QQmlObjectOrGadget::metacall qqmlpropertycache.cpp 1713 0x7572e318 7 CallMethod qv4qobjectwrapper.cpp 1100 0x756b3e1c 8 CallPrecise qv4qobjectwrapper.cpp 1348 0x756b46f4 9 QV4::QObjectMethod::callInternal qv4qobjectwrapper.cpp 1838 0x756b560c 10 QV4::Object::call qv4object_p.h 372 0x756c9250 11 QV4::Runtime::method_callProperty qv4runtime.cpp 1102 0x756c9250 12 ?? 0x62897eee
Code pieces which crashes
void QLowEnergyControllerPrivate::disconnectFromDevice() { setState(QLowEnergyController::ClosingState); l2cpSocket->close(); <<<<< Missing check. resetController(); }
Attachments
Issue Links
- depends on
-
QTBUG-46819 Port Bluez 5 BTLE backend to Bluez 5 DBUS API
- Closed
- resulted from
-
QTBUG-55150 QLowEnergyController::connectToDevice() fails with Unknown error
- Closed
For Gerrit Dashboard: QTBUG-63619 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
208388,3 | Fix crash due to inconsistent state in QLEController during JobDisconnectDevice | 5.9 | qt/qtconnectivity | Status: MERGED | +2 | 0 |