mirror of
https://github.com/zjs81/meshcore-open.git
synced 2026-06-14 22:55:12 +10:00
Prevent disconnection handling when already disconnected, curing a race condition.
This commit is contained in:
@@ -706,7 +706,7 @@ class MeshCoreConnector extends ChangeNotifier {
|
||||
|
||||
try {
|
||||
_connectionSubscription = device.connectionState.listen((state) {
|
||||
if (state == BluetoothConnectionState.disconnected) {
|
||||
if (state == BluetoothConnectionState.disconnected && isConnected) {
|
||||
_handleDisconnection();
|
||||
}
|
||||
});
|
||||
@@ -959,12 +959,7 @@ class MeshCoreConnector extends ChangeNotifier {
|
||||
if (!isConnected) return;
|
||||
if (_batteryRequested && !force) return;
|
||||
_batteryRequested = true;
|
||||
try {
|
||||
await sendFrame(buildGetBattAndStorageFrame());
|
||||
} catch (e) {
|
||||
// Connection likely lost - trigger disconnection handling
|
||||
_handleDisconnection();
|
||||
}
|
||||
await sendFrame(buildGetBattAndStorageFrame());
|
||||
}
|
||||
|
||||
void _startBatteryPolling() {
|
||||
|
||||
Reference in New Issue
Block a user