Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r6e40d96dffe440a266f964e45b15ffe31769619a -re6f9c57b19f62f22c5670ec404b916a218c42daa --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 6e40d96dffe440a266f964e45b15ffe31769619a) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision e6f9c57b19f62f22c5670ec404b916a218c42daa) @@ -3432,7 +3432,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); @@ -3494,7 +3495,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); @@ -3583,7 +3585,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);