Index: sources/canbus/MessageInterpreter.cpp =================================================================== diff -u -r93b6bd48e2aec1fca4f2b5b79dcefffa49e9ce16 -ra0f2700fad25ef602d0e3b953186d5572efd8169 --- sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision 93b6bd48e2aec1fca4f2b5b79dcefffa49e9ce16) +++ sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision a0f2700fad25ef602d0e3b953186d5572efd8169) @@ -111,13 +111,18 @@ */ bool MessageInterpreter::isPayloadLenValid(const Message &vMessage, Gui::GuiActionType vType) const { + int len = vMessage.data.length(); QString mActionIdHexString = Format::toHexString(vMessage.actionId); if ( ! payloadLen.contains(vType) ) { LOG_DEBUG(QString("Undefined data length for received Message with ID '%1'").arg(mActionIdHexString)); return false; } - if ( vMessage.data.length() < payloadLen[vType] ) { - LOG_DEBUG(QString("Incorrect data length for received Message with ID '%1'").arg(mActionIdHexString)); + if ( len < payloadLen[vType] ) { + LOG_DEBUG(QString("Incorrect data length (%2 of %3) for received Message with ID '%1'") + .arg(mActionIdHexString) + .arg(len) + .arg(payloadLen[vType]) + ); return false; } return true; @@ -395,7 +400,7 @@ ok = true; LOG_EVENT(QString("DG,CheckIn," + QVariant(vData).toStringList().join(','))); break; - + // DG data messages case Gui::GuiActionType::ID_DGROPumpData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGROPumpData ); break; case Gui::GuiActionType::ID_DGPressuresData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGPressuresData ); break; case Gui::GuiActionType::ID_DGDrainPumpData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGDrainPumpData ); break; @@ -408,6 +413,9 @@ case Gui::GuiActionType::ID_DGDebugText : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGDebugText ); break; case Gui::GuiActionType::ID_DGAccelerometerData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGAccelerometerData ); break; + // DG Response Messages + case Gui::GuiActionType::ID_AdjustDGVersionsRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustDGVersionsRsp ); break; + // unhandled messages: these will only be logged as received message // there has nothing been defined for these messages. default: