Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r3024adb7a36bc2741f7644ec72e809582bc50ff1 -r9fea55e5fa58ce75b251b84e08c9b11210cbc288 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 3024adb7a36bc2741f7644ec72e809582bc50ff1) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 9fea55e5fa58ce75b251b84e08c9b11210cbc288) @@ -3436,7 +3436,8 @@ U32 totalMessages; U32 payloadLength; - if ( message->hdr.payloadLen >= ( sizeof(currentMessage) + sizeof(totalMessages) + sizeof(payloadLength) ) ) + if ( ( message->hdr.payloadLen >= ( sizeof(currentMessage) + sizeof(totalMessages) + sizeof(payloadLength) ) ) && + ( DG_MODE_SERV == getCurrentOperationMode() ) ) { memcpy(¤tMessage, payloadPtr, sizeof(U32)); payloadPtr += sizeof(U32); @@ -3498,7 +3499,8 @@ U32 totalMessages; U32 payloadLength; - if ( message->hdr.payloadLen >= ( sizeof(currentMessage) + sizeof(totalMessages) + sizeof(payloadLength) ) ) + if ( ( message->hdr.payloadLen >= ( sizeof(currentMessage) + sizeof(totalMessages) + sizeof(payloadLength) ) ) && + ( DG_MODE_SERV == getCurrentOperationMode() ) ) { memcpy(¤tMessage, payloadPtr, sizeof(U32)); payloadPtr += sizeof(U32); @@ -3587,7 +3589,8 @@ U32 totalMessages; U32 payloadLength; - if ( message->hdr.payloadLen >= ( sizeof(currentMessage) + sizeof(totalMessages) + sizeof(payloadLength) ) ) + if ( ( message->hdr.payloadLen >= ( sizeof(currentMessage) + sizeof(totalMessages) + sizeof(payloadLength) ) ) && + ( DG_MODE_SERV == getCurrentOperationMode() ) ) { memcpy(¤tMessage, payloadPtr, sizeof(U32)); payloadPtr += sizeof(U32);