always set checksum

This commit is contained in:
Adeeb Shihadeh 2022-07-21 19:47:20 -07:00
parent 1cf2f5b512
commit 31bb1832fc
1 changed files with 1 additions and 3 deletions

View File

@ -45,7 +45,6 @@ std::vector<uint8_t> CANPacker::pack(uint32_t address, const std::vector<SignalP
// set all values for all given signal/value pairs
bool counter_set = false;
bool checksum_set = false;
for (const auto& sigval : signals) {
auto sig_it = signal_lookup.find(std::make_pair(address, sigval.name));
if (sig_it == signal_lookup.end()) {
@ -62,7 +61,6 @@ std::vector<uint8_t> CANPacker::pack(uint32_t address, const std::vector<SignalP
set_value(ret, sig, ival);
counter_set = counter_set || (sigval.name == "COUNTER");
checksum_set = checksum_set || (sigval.name == "CHECKSUM");
if (counter_set) {
counters[address] = sigval.value;
}
@ -82,7 +80,7 @@ std::vector<uint8_t> CANPacker::pack(uint32_t address, const std::vector<SignalP
// set message checksum
auto sig_it_checksum = signal_lookup.find(std::make_pair(address, "CHECKSUM"));
if (!checksum_set && sig_it_checksum != signal_lookup.end()) {
if (sig_it_checksum != signal_lookup.end()) {
const auto &sig = sig_it_checksum->second;
if (sig.calc_checksum != nullptr) {
unsigned int checksum = sig.calc_checksum(address, sig, ret);