Skip to content

Commit 0d031ca

Browse files
committed
Merge branch 'bugfix/fix_i2c_coverity_issue' into 'master'
fix(i2c): Fix some i2c coverity issue Closes IDF-11968, IDF-11970, and IDF-11969 See merge request espressif/esp-idf!38743
2 parents dc71ad3 + 34447b6 commit 0d031ca

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

components/esp_driver_i2c/i2c_master.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -386,6 +386,8 @@ static void s_i2c_start_end_command(i2c_master_bus_handle_t i2c_master, i2c_oper
386386
}
387387
uint8_t addr_write[addr_byte];
388388
uint8_t addr_read[addr_byte];
389+
memset(addr_write, 0, sizeof(addr_write));
390+
memset(addr_read, 0, sizeof(addr_read));
389391

390392
if (addr_byte != 0) {
391393
addr_write[0] = I2C_ADDRESS_TRANS_WRITE(cmd_address);
@@ -1360,7 +1362,8 @@ esp_err_t i2c_master_execute_defined_operations(i2c_master_dev_handle_t i2c_dev,
13601362
ESP_RETURN_ON_FALSE(i2c_operation != NULL, ESP_ERR_INVALID_ARG, TAG, "i2c operation pointer is invalid");
13611363
ESP_RETURN_ON_FALSE(operation_list_num <= (SOC_I2C_CMD_REG_NUM), ESP_ERR_INVALID_ARG, TAG, "i2c command list cannot contain so many commands");
13621364

1363-
i2c_operation_t i2c_ops[operation_list_num] = {};
1365+
i2c_operation_t i2c_ops[operation_list_num];
1366+
memset(i2c_ops, 0, sizeof(i2c_ops));
13641367
for (int i = 0; i < operation_list_num; i++) {
13651368
switch (i2c_operation[i].command) {
13661369
case I2C_MASTER_CMD_START:

0 commit comments

Comments
 (0)