mbed.org local branch of microbit-dal. The real version lives in git at https://github.com/lancaster-university/microbit-dal
Dependencies: BLE_API nRF51822 mbed-dev-bin
Dependents: microbit Microbit IoTChallenge1 microbit ... more
Diff: source/drivers/MicroBitStorage.cpp
- Revision:
- 48:34d1adb6771c
- Parent:
- 37:b624ae5e94a5
--- a/source/drivers/MicroBitStorage.cpp Wed Jul 13 12:18:26 2016 +0100 +++ b/source/drivers/MicroBitStorage.cpp Wed Jul 13 12:18:27 2016 +0100 @@ -223,6 +223,16 @@ if(keySize > (int)sizeof(pair.key) || dataSize > (int)sizeof(pair.value) || dataSize < 0) return MICROBIT_INVALID_PARAMETER; + KeyValuePair *currentValue = get(key); + + int upToDate = currentValue && (memcmp(currentValue->value, data, dataSize) == 0); + + if(currentValue) + delete currentValue; + + if(upToDate) + return MICROBIT_OK; + memcpy(pair.key, key, keySize); memcpy(pair.value, data, dataSize);