MicroBit as BLE gamepad
Fork of nRF51822 by
Diff: source/nRF5xGattServer.cpp
- Revision:
- 449:fd09f590751b
- Parent:
- 448:1ed5645452e8
- Child:
- 450:e718f00626f2
--- a/source/nRF5xGattServer.cpp Mon Nov 02 09:05:09 2015 +0000 +++ b/source/nRF5xGattServer.cpp Mon Nov 02 09:05:09 2015 +0000 @@ -45,6 +45,7 @@ /**************************************************************************/ ble_error_t nRF5xGattServer::addService(GattService &service) { + /* ToDo: Make sure we don't overflow the array, etc. */ /* ToDo: Make sure this service UUID doesn't already exist (?) */ /* ToDo: Basic validation */ @@ -62,10 +63,7 @@ /* Add characteristics to the service */ for (uint8_t i = 0; i < service.getCharacteristicCount(); i++) { - if (characteristicCount >= BLE_TOTAL_CHARACTERISTICS) { - return BLE_ERROR_NO_MEM; - } - GattCharacteristic *p_char = service.getCharacteristic(i); + GattCharacteristic *p_char = service.getCharacteristic(i); /* Skip any incompletely defined, read-only characteristics. */ if ((p_char->getValueAttribute().getValuePtr() == NULL) && @@ -110,12 +108,9 @@ characteristicCount++; /* Add optional descriptors if any */ + /* ToDo: Make sure we don't overflow the array */ for (uint8_t j = 0; j < p_char->getDescriptorCount(); j++) { - if (descriptorCount >= BLE_TOTAL_DESCRIPTORS) { - return BLE_ERROR_NO_MEM; - } - - GattAttribute *p_desc = p_char->getDescriptor(j); + GattAttribute *p_desc = p_char->getDescriptor(j); /* skip the user-description-descriptor here; this has already been handled when adding the characteristic (above). */ if (p_desc->getUUID() == BLE_UUID_DESCRIPTOR_CHAR_USER_DESC) { continue;