AP_CANManager: fix skipping driver init for disabled slcan iface

This commit is contained in:
bugobliterator 2020-09-05 16:22:35 +05:30 committed by Andrew Tridgell
parent f823848697
commit 76ee7bec77

View File

@ -245,11 +245,9 @@ void AP_CANManager::init()
if (_drivers[drv_num] == nullptr) {
continue;
}
if (_slcan_interface.get_iface_num() >= HAL_NUM_CAN_IFACES ||
_slcan_interface.get_iface_num() < 0) {
continue;
}
if (_interfaces[_slcan_interface.get_iface_num()]._driver_number != drv_num + 1) {
if ((_slcan_interface.get_iface_num() >= HAL_NUM_CAN_IFACES ||
_slcan_interface.get_iface_num() < 0) ||
(_interfaces[_slcan_interface.get_iface_num()]._driver_number != drv_num + 1)) {
_drivers[drv_num]->init(drv_num, true);
} else {
_drivers[drv_num]->init(drv_num, false);