Skip to content

Commit

Permalink
Bugfix: add missing taskData when retrieving all descriptors
Browse files Browse the repository at this point in the history
  • Loading branch information
h2zero committed Feb 7, 2025
1 parent 5179398 commit 2f3dc3a
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 2 deletions.
4 changes: 3 additions & 1 deletion src/NimBLERemoteCharacteristic.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -176,8 +176,10 @@ NimBLERemoteDescriptor* NimBLERemoteCharacteristic::getDescriptor(const NimBLEUU
*/
const std::vector<NimBLERemoteDescriptor*>& NimBLERemoteCharacteristic::getDescriptors(bool refresh) const {
if (refresh) {
NimBLETaskData taskData(const_cast<NimBLERemoteCharacteristic*>(this));
NimBLEDescriptorFilter filter = {nullptr, nullptr, &taskData};
deleteDescriptors();
retrieveDescriptors();
retrieveDescriptors(&filter);
}

return m_vDescriptors;
Expand Down
2 changes: 1 addition & 1 deletion src/NimBLERemoteCharacteristic.h
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ class NimBLERemoteCharacteristic : public NimBLERemoteValueAttribute {
~NimBLERemoteCharacteristic();

bool setNotify(uint16_t val, notify_callback notifyCallback = nullptr, bool response = true) const;
bool retrieveDescriptors(NimBLEDescriptorFilter* filter = nullptr) const;
bool retrieveDescriptors(NimBLEDescriptorFilter* filter) const;

static int descriptorDiscCB(
uint16_t connHandle, const ble_gatt_error* error, uint16_t chrHandle, const ble_gatt_dsc* dsc, void* arg);
Expand Down

0 comments on commit 2f3dc3a

Please sign in to comment.