diff --git a/components/driver/i2c.c b/components/driver/i2c.c index 7c03dd5cb2..4aa710c733 100644 --- a/components/driver/i2c.c +++ b/components/driver/i2c.c @@ -1286,7 +1286,9 @@ static void IRAM_ATTR i2c_master_cmd_begin_static(i2c_port_t i2c_num) p_i2c->cmd_idx = 0; } else { p_i2c->cmd_link.head = p_i2c->cmd_link.head->next; - p_i2c->cmd_link.head->cmd.bytes_used = 0; + if (p_i2c->cmd_link.head != NULL) { + p_i2c->cmd_link.head->cmd.bytes_used = 0; + } } } else if ((p_i2c->status == I2C_STATUS_ACK_ERROR) || (p_i2c->status == I2C_STATUS_TIMEOUT)) {