From aec383b97434346a954e3834c851dffea1ea143c Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Tue, 6 Jun 2023 11:11:16 +0200 Subject: [PATCH 1/2] add force flag for cp helper --- bsp_q7s/core/CoreController.cpp | 3 +++ mission/sysDefs.h | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/bsp_q7s/core/CoreController.cpp b/bsp_q7s/core/CoreController.cpp index 5c4c4d62..2aaef9a5 100644 --- a/bsp_q7s/core/CoreController.cpp +++ b/bsp_q7s/core/CoreController.cpp @@ -243,6 +243,9 @@ ReturnValue_t CoreController::executeAction(ActionId_t actionId, MessageQueueId_ return result; } std::ostringstream oss("cp ", std::ostringstream::ate); + if (parser.isForceOptSet()) { + oss << "-f "; + } if (parser.isRecursiveOptSet()) { oss << "-r "; } diff --git a/mission/sysDefs.h b/mission/sysDefs.h index c84c237f..f1de95a3 100644 --- a/mission/sysDefs.h +++ b/mission/sysDefs.h @@ -242,19 +242,22 @@ class CpHelperParser { CpHelperParser(const uint8_t* data, size_t maxLen) : data(data), maxLen(maxLen) {} ReturnValue_t parse() { - if (maxLen < 1) { + if (maxLen < 2) { return SerializeIF::STREAM_TOO_SHORT; } recursiveOpt = data[0]; + forceOpt = data[1]; return parseDestTargetString(data + 1, maxLen - 1, destTgt); } const SourceTargetPair& destTgtPair() const { return destTgt; } bool isRecursiveOptSet() const { return recursiveOpt; } + bool isForceOptSet() const { return forceOpt; } private: const uint8_t* data; size_t maxLen; bool recursiveOpt = false; + bool forceOpt = false; SourceTargetPair destTgt; }; -- 2.43.0 From 5058b8905d555004f655816df1910fd50e450cda Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Tue, 6 Jun 2023 14:05:44 +0200 Subject: [PATCH 2/2] let's not forget this --- mission/sysDefs.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mission/sysDefs.h b/mission/sysDefs.h index f1de95a3..9f402226 100644 --- a/mission/sysDefs.h +++ b/mission/sysDefs.h @@ -247,7 +247,7 @@ class CpHelperParser { } recursiveOpt = data[0]; forceOpt = data[1]; - return parseDestTargetString(data + 1, maxLen - 1, destTgt); + return parseDestTargetString(data + 2, maxLen - 2, destTgt); } const SourceTargetPair& destTgtPair() const { return destTgt; } bool isRecursiveOptSet() const { return recursiveOpt; } -- 2.43.0