From cfa353d3e39a69372ac8c5028c0b0503735a27ce Mon Sep 17 00:00:00 2001 From: Theodoros Katzalis <thodkatz@gmail.com> Date: Wed, 20 Mar 2019 21:02:48 +0200 Subject: [PATCH] Added an error condition Minor changes --- src/Message.cpp | 7 +++++-- src/Platform/x86/Service.cpp | 5 ++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/Message.cpp b/src/Message.cpp index d9b9b2c1..8ee7e181 100644 --- a/src/Message.cpp +++ b/src/Message.cpp @@ -37,8 +37,11 @@ void Message::appendBits(uint8_t numBits, uint16_t data) { } void Message::finalize() { - if(currentBit != 0) - dataSize++; + assertI(dataSize < ECSS_MAX_MESSAGE_SIZE, ErrorHandler::MessageTooLarge); + + if (currentBit != 0) { + dataSize++; + } } void Message::appendByte(uint8_t value) { diff --git a/src/Platform/x86/Service.cpp b/src/Platform/x86/Service.cpp index ff9d9d95..b148c242 100644 --- a/src/Platform/x86/Service.cpp +++ b/src/Platform/x86/Service.cpp @@ -2,7 +2,10 @@ #include <iomanip> #include "Service.hpp" -void Service::storeMessage(const Message &message) { +void Service::storeMessage(Message & message) { + // appends the remaining bits to complete a byte + message.finalize(); + // Just print it to the screen std::cout << "New " << ((message.packetType == Message::TM) ? "TM" : "TC") << "[" << std::hex -- GitLab