diff options
| author | JF <jf@codingfield.com> | 2020-07-11 21:09:34 +0200 |
|---|---|---|
| committer | JF <jf@codingfield.com> | 2020-07-11 21:09:34 +0200 |
| commit | 64c14274fc2f025fc48d3df47a1640f08eb968cd (patch) | |
| tree | 262cf8b4e84c556748f42bbf778b48a68210921d /src/Components/Ble/NotificationManager.cpp | |
| parent | 0bcaf9c22d6183ba8072e10abb9da7aea578b8db (diff) | |
| parent | 6309719a62436fd746a7a8b228205e93b419ca26 (diff) | |
Merge branch 'develop'
# Conflicts:
# CMakeLists.txt
Diffstat (limited to 'src/Components/Ble/NotificationManager.cpp')
| -rw-r--r-- | src/Components/Ble/NotificationManager.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/Components/Ble/NotificationManager.cpp b/src/Components/Ble/NotificationManager.cpp index 2e02cb15..0aea0697 100644 --- a/src/Components/Ble/NotificationManager.cpp +++ b/src/Components/Ble/NotificationManager.cpp @@ -4,11 +4,12 @@ using namespace Pinetime::Controllers; void NotificationManager::Push(Pinetime::Controllers::NotificationManager::Categories category, - const char *message, uint8_t messageSize) { + const char *message, uint8_t currentMessageSize) { // TODO handle edge cases on read/write index + auto checkedSize = std::min(currentMessageSize, uint8_t{18}); auto& notif = notifications[writeIndex]; - std::memcpy(notif.message.data(), message, messageSize); - notif.message[messageSize] = '\0'; + std::memcpy(notif.message.data(), message, checkedSize); + notif.message[checkedSize] = '\0'; notif.category = category; writeIndex = (writeIndex + 1 < TotalNbNotifications) ? writeIndex + 1 : 0; |
