fix(rc): check write return value in BindCRSF, guard Spektrum bind against invalid sub-type

This commit is contained in:
Jacob Dahl
2026-03-17 20:06:53 -08:00
parent 3d92ca5edf
commit c47fcf7390
3 changed files with 7 additions and 7 deletions
+1 -1
View File
@@ -564,7 +564,7 @@ bool CrsfRc::BindCRSF()
0xE8, // packet CRC8
};
return _uart->write((void *)bind_frame, sizeof(bind_frame));
return _uart->write((void *)bind_frame, sizeof(bind_frame)) == sizeof(bind_frame);
}
int CrsfRc::print_status()
+3 -3
View File
@@ -182,9 +182,9 @@ void DsmRc::Run()
dsm_bind_pulses = DSMX8_BIND_PULSES;
}
bind_spektrum(dsm_bind_pulses);
cmd_ret = vehicle_command_ack_s::VEHICLE_CMD_RESULT_ACCEPTED;
if (dsm_bind_pulses > 0 && bind_spektrum(dsm_bind_pulses)) {
cmd_ret = vehicle_command_ack_s::VEHICLE_CMD_RESULT_ACCEPTED;
}
}
} else {
+3 -3
View File
@@ -404,9 +404,9 @@ void RCInput::Run()
dsm_bind_pulses = DSMX8_BIND_PULSES;
}
bind_spektrum(dsm_bind_pulses);
cmd_ret = vehicle_command_ack_s::VEHICLE_CMD_RESULT_ACCEPTED;
if (dsm_bind_pulses > 0 && bind_spektrum(dsm_bind_pulses)) {
cmd_ret = vehicle_command_ack_s::VEHICLE_CMD_RESULT_ACCEPTED;
}
}
} else {