diff --git a/core/MyMessage.cpp b/core/MyMessage.cpp index 117dfe3..027b273 100644 --- a/core/MyMessage.cpp +++ b/core/MyMessage.cpp @@ -23,14 +23,28 @@ #include -MyMessage::MyMessage() { - destination = 0; // Gateway is default destination +MyMessage::MyMessage() +{ + clear(); } -MyMessage::MyMessage(uint8_t _sensor, uint8_t _type) { - destination = 0; // Gateway is default destination +MyMessage::MyMessage(uint8_t _sensor, uint8_t _type) +{ + clear(); sensor = _sensor; - type = _type; + type = _type; +} + +void MyMessage::clear() +{ + last = 0u; + sender = 0u; + destination = 0u; // Gateway is default destination + version_length = 0u; + command_ack_payload = 0u; + type = 0u; + sensor = 0u; + (void)memset(data, 0u, sizeof(data)); } bool MyMessage::isAck() const { diff --git a/core/MyMessage.h b/core/MyMessage.h index 2d37f78..aa84b49 100644 --- a/core/MyMessage.h +++ b/core/MyMessage.h @@ -282,6 +282,11 @@ public: char i2h(uint8_t i) const; + /** + * Clear message contents. + */ + void clear(); + /** * If payload is something else than P_STRING you can have the payload value converted * into string representation by supplying a buffer with the minimum size of