From f05afe5722cd0dd6c369d13784894b148eb0d0f0 Mon Sep 17 00:00:00 2001 From: wanckl Date: Mon, 13 Jul 2026 16:44:51 +0800 Subject: [PATCH] fix(driver_twai): fixed legacy twai OOB issue when rx dlc larger than 8 --- components/driver/twai/twai.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/driver/twai/twai.c b/components/driver/twai/twai.c index 05002726ed4..3401f6ada2d 100644 --- a/components/driver/twai/twai.c +++ b/components/driver/twai/twai.c @@ -822,7 +822,8 @@ esp_err_t twai_receive_v2(twai_handle_t handle, twai_message_t *message, TickTyp message->extd = header.ide; message->rtr = header.rtr; //Set remaining bytes of data to 0 - memset(message->data + message->data_length_code, 0, TWAI_FRAME_MAX_LEN - message->data_length_code); + uint8_t data_length = (header.dlc > TWAI_FRAME_MAX_LEN) ? TWAI_FRAME_MAX_LEN : header.dlc; + memset(message->data + data_length, 0, TWAI_FRAME_MAX_LEN - data_length); return ESP_OK; }