Browse Source

microRTPS: transport: do not discard message from rx_buffer if a CRC error occurs

sbg
TSC21 5 years ago committed by Nuno Marques
parent
commit
398f104918
  1. 7
      msg/templates/urtps/microRTPS_transport.cpp

7
msg/templates/urtps/microRTPS_transport.cpp

@ -211,11 +211,12 @@ ssize_t Transport_node::read(uint8_t *topic_ID, char out_buffer[], size_t buffer @@ -211,11 +211,12 @@ ssize_t Transport_node::read(uint8_t *topic_ID, char out_buffer[], size_t buffer
memmove(out_buffer, rx_buffer + msg_start_pos + header_size, payload_len);
*topic_ID = header->topic_ID;
len = payload_len + header_size;
// discard message from rx_buffer
rx_buff_pos -= msg_start_pos + header_size + payload_len;
memmove(rx_buffer, rx_buffer + msg_start_pos + header_size + payload_len, rx_buff_pos);
}
// discard message from rx_buffer
rx_buff_pos -= msg_start_pos + header_size + payload_len;
memmove(rx_buffer, rx_buffer + msg_start_pos + header_size + payload_len, rx_buff_pos);
return len;
}

Loading…
Cancel
Save