From 4ac71d2a7fe9933d2209674de0e1c38b521a5828 Mon Sep 17 00:00:00 2001 From: Rotzbua Date: Wed, 2 Nov 2022 12:07:47 +0100 Subject: [PATCH] [BLE Client] Fix deadlock if connection loss ... (#7319) ... while readValue --- libraries/BLE/src/BLERemoteCharacteristic.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libraries/BLE/src/BLERemoteCharacteristic.cpp b/libraries/BLE/src/BLERemoteCharacteristic.cpp index dbf7e736a..825ca33c7 100644 --- a/libraries/BLE/src/BLERemoteCharacteristic.cpp +++ b/libraries/BLE/src/BLERemoteCharacteristic.cpp @@ -247,6 +247,8 @@ void BLERemoteCharacteristic::gattClientEventHandler(esp_gattc_cb_event_t event, break; case ESP_GATTC_DISCONNECT_EVT: + // Cleanup semaphores to avoid deadlocks. + m_semaphoreReadCharEvt.give(1); m_semaphoreWriteCharEvt.give(1); break;