stmhal: Fix off-by-one error when checking for valid I2C and SPI bus.
This commit is contained in:
parent
5a57447a8c
commit
17d9b5006d
@ -327,7 +327,7 @@ STATIC mp_obj_t pyb_i2c_make_new(mp_obj_t type_in, mp_uint_t n_args, mp_uint_t n
|
|||||||
} else {
|
} else {
|
||||||
i2c_id = mp_obj_get_int(args[0]);
|
i2c_id = mp_obj_get_int(args[0]);
|
||||||
if (i2c_id < 1 || i2c_id > MP_ARRAY_SIZE(pyb_i2c_obj)
|
if (i2c_id < 1 || i2c_id > MP_ARRAY_SIZE(pyb_i2c_obj)
|
||||||
|| pyb_i2c_obj[i2c_id].i2c == NULL) {
|
|| pyb_i2c_obj[i2c_id - 1].i2c == NULL) {
|
||||||
nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ValueError,
|
nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ValueError,
|
||||||
"I2C(%d) does not exist", i2c_id));
|
"I2C(%d) does not exist", i2c_id));
|
||||||
}
|
}
|
||||||
|
@ -485,7 +485,7 @@ STATIC mp_obj_t pyb_spi_make_new(mp_obj_t type_in, mp_uint_t n_args, mp_uint_t n
|
|||||||
} else {
|
} else {
|
||||||
spi_id = mp_obj_get_int(args[0]);
|
spi_id = mp_obj_get_int(args[0]);
|
||||||
if (spi_id < 1 || spi_id > MP_ARRAY_SIZE(pyb_spi_obj)
|
if (spi_id < 1 || spi_id > MP_ARRAY_SIZE(pyb_spi_obj)
|
||||||
|| pyb_spi_obj[spi_id].spi == NULL) {
|
|| pyb_spi_obj[spi_id - 1].spi == NULL) {
|
||||||
nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ValueError,
|
nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ValueError,
|
||||||
"SPI(%d) does not exist", spi_id));
|
"SPI(%d) does not exist", spi_id));
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user