diff --git a/CHANGELOG.md b/CHANGELOG.md index 98105a6c..43ec27a2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,6 +21,11 @@ will consitute of a breaking change warranting a new major release: - STR quaternions are now used by the `MEKF` by default - Changed nominal `SUS Assembly` side to `B Side`. +## Fixed + +- Added null termination for PLOC MPSoC image taking command which could possibly lead to + default target filenames. + # [v8.1.1] 2024-06-05 ## Added diff --git a/linux/payload/plocMpsocHelpers.h b/linux/payload/plocMpsocHelpers.h index d596ab6c..35e34b11 100644 --- a/linux/payload/plocMpsocHelpers.h +++ b/linux/payload/plocMpsocHelpers.h @@ -920,13 +920,14 @@ class TcCamTakePic : public TcBase { } size_t deserLen = commandDataLen; size_t serLen = 0; - fileName = reinterpret_cast(commandData); + fileName = std::string(reinterpret_cast(commandData)); if (fileName.size() > MAX_FILENAME_SIZE) { return FILENAME_TOO_LONG; } deserLen -= fileName.length() + 1; *dataPtr += fileName.length() + 1; uint8_t** payloadPtr = &payloadStart; + memset(payloadStart, 0, FILENAME_FIELD_SIZE); memcpy(payloadStart, fileName.data(), fileName.size()); *payloadPtr += FILENAME_FIELD_SIZE; serLen += FILENAME_FIELD_SIZE;