switch(nbytes)
{
case CANFD_MTU:
- DEBUG(binder_interface, "convert_from_canfd_frame: Got an CAN FD frame");
+ DEBUG(binder_interface, "set_max_data_length: Got an CAN FD frame");
maxdlen_ = CANFD_MAX_DLEN;
break;
case CAN_MTU:
- DEBUG(binder_interface, "convert_from_canfd_frame: Got a legacy CAN frame");
+ DEBUG(binder_interface, "set_max_data_length: Got a legacy CAN frame");
maxdlen_ = CAN_MAX_DLEN;
break;
default:
- ERROR(binder_interface, "convert_from_canfd_frame: unsupported CAN frame");
+ ERROR(binder_interface, "set_max_data_length: unsupported CAN frame");
break;
}
}
{
int i;
+ data_.clear();
/* maxdlen_ is now set at CAN_MAX_DLEN or CANFD_MAX_DLEN, respectively 8 and 64 bytes*/
for(i=0;i<maxdlen_;i++)
{
if(maxdlen_ == CANFD_MAX_DLEN)
set_flags(frame.flags);
- data_.reserve(maxdlen_);
+ if ( data_.capacity() < maxdlen_)
+ data_.reserve(maxdlen_);
set_data(frame.data);
DEBUG(binder_interface, "convert_from_canfd_frame: Found id: %X, format: %X, length: %X, data %02X%02X%02X%02X%02X%02X%02X%02X", id_, format_, length_,