Tracker: add sanity check when fetching GCS_MAVLink instance

This commit is contained in:
Peter Barker 2019-06-25 12:56:55 +10:00 committed by Andrew Tridgell
parent a50004baff
commit 77187cd7e2

View File

@ -14,8 +14,20 @@ public:
uint8_t num_gcs() const override { return ARRAY_SIZE(_chan); }; uint8_t num_gcs() const override { return ARRAY_SIZE(_chan); };
// return GCS link at offset ofs // return GCS link at offset ofs
GCS_MAVLINK_Tracker &chan(const uint8_t ofs) override { return _chan[ofs]; }; GCS_MAVLINK_Tracker &chan(uint8_t ofs) override {
const GCS_MAVLINK_Tracker &chan(const uint8_t ofs) const override { return _chan[ofs]; }; if (ofs >= num_gcs()) {
AP::internalerror().error(AP_InternalError::error_t::gcs_offset);
ofs = 0;
}
return _chan[ofs];
}
const GCS_MAVLINK_Tracker &chan(uint8_t ofs) const override {
if (ofs >= num_gcs()) {
AP::internalerror().error(AP_InternalError::error_t::gcs_offset);
ofs = 0;
}
return _chan[ofs];
}
void update_vehicle_sensor_status_flags() override; void update_vehicle_sensor_status_flags() override;