From 4ffc6155a1dacbea3b3477e26c71c128a8c458e3 Mon Sep 17 00:00:00 2001 From: john30 Date: Sun, 7 Dec 2014 09:43:49 +0100 Subject: [PATCH] fixed escaping and crc --- src/lib/ebus/message.cpp | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/lib/ebus/message.cpp b/src/lib/ebus/message.cpp index 1ac94290..87d6c2bc 100644 --- a/src/lib/ebus/message.cpp +++ b/src/lib/ebus/message.cpp @@ -242,32 +242,33 @@ result_t Message::prepareMaster(const unsigned char srcAddress, SymbolString& ma if (m_isPassive == true) return RESULT_ERR_INVALID_ARG; // prepare not possible - masterData.clear(); - result_t result = masterData.push_back(srcAddress, false); + SymbolString master; + master.clear(); + result_t result = master.push_back(srcAddress, false, false); if (result != RESULT_OK) return result; - result = masterData.push_back(m_dstAddress, false); + result = master.push_back(m_dstAddress, false, false); if (result != RESULT_OK) return result; - result = masterData.push_back(m_id[0], false); + result = master.push_back(m_id[0], false, false); if (result != RESULT_OK) return result; - result = masterData.push_back(m_id[1], false); + result = master.push_back(m_id[1], false, false); if (result != RESULT_OK) return result; unsigned char addData = m_data->getLength(pt_masterData); - result = masterData.push_back(m_id.size() - 2 + addData, false); + result = master.push_back(m_id.size() - 2 + addData, false, false); if (result != RESULT_OK) return result; for (size_t i=2; iwrite(input, pt_masterData, masterData, m_id.size() - 2, separator); + result = m_data->write(input, pt_masterData, master, m_id.size() - 2, separator); if (result != RESULT_OK) return result; - result = masterData.push_back(masterData.getCRC(), false, false); // TODO only if calculated + masterData = SymbolString(master); return result; } @@ -325,6 +326,8 @@ result_t MessageMap::add(Message* message) m_passiveMessagesByKey[pkey] = message; } + //m_pollMessages.push() + return RESULT_OK; }