File tree Expand file tree Collapse file tree 1 file changed +7
-7
lines changed Expand file tree Collapse file tree 1 file changed +7
-7
lines changed Original file line number Diff line number Diff line change @@ -253,12 +253,6 @@ uint8_t Modbus::poll()
253253 return 0 ;
254254 }
255255
256- // Prepare the output buffer.
257- memset (_responseBuffer, 0 , MODBUS_MAX_BUFFER);
258- _responseBuffer[MODBUS_ADDRESS_INDEX] = _requestBuffer[MODBUS_ADDRESS_INDEX];
259- _responseBuffer[MODBUS_FUNCTION_CODE_INDEX] = _requestBuffer[MODBUS_FUNCTION_CODE_INDEX];
260- _responseBufferLength = MODBUS_FRAME_SIZE;
261-
262256 // If communication is not enabled, skip processing
263257 if (!_enabled)
264258 {
@@ -716,6 +710,12 @@ bool Modbus::validateRequest()
716710 return false ;
717711 }
718712
713+ // Prepare the output buffer.
714+ memset (_responseBuffer, 0 , MODBUS_MAX_BUFFER);
715+ _responseBuffer[MODBUS_ADDRESS_INDEX] = _requestBuffer[MODBUS_ADDRESS_INDEX];
716+ _responseBuffer[MODBUS_FUNCTION_CODE_INDEX] = _requestBuffer[MODBUS_FUNCTION_CODE_INDEX];
717+ _responseBufferLength = MODBUS_FRAME_SIZE;
718+
719719 // report_illegal_function after the CRC check, cheaper
720720 if (report_illegal_function)
721721 {
@@ -1036,7 +1036,7 @@ uint16_t Modbus::reportException(uint8_t exceptionCode)
10361036 *
10371037 * @return The calculated CRC as an unsigned 16 bit integer.
10381038 */
1039-
1039+
10401040#ifndef CRC_LTABLE_CALC
10411041
10421042uint16_t Modbus::calculateCRC (uint8_t *buffer, int length)
You can’t perform that action at this time.
0 commit comments