fix(telemetry): HoTT out-of-bounds warning byte and null sensor lookup (#7777)

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
3djc
2026-09-20 12:45:49 +10:00
committed by GitHub
co-authored by Claude Opus 5
parent 4d2e2a9fa3
commit e7945182d0
+5 -3
View File
@@ -296,13 +296,15 @@ const HottSensor hottSensors[] = {
};
// clang-format on
// Never returns null: falls back to the sentinel entry (name == nullptr)
const HottSensor * getHottSensor(uint16_t id)
{
for (const HottSensor * sensor = hottSensors; sensor->id; sensor++) {
const HottSensor * sensor = hottSensors;
for (; sensor->id; sensor++) {
if (id == sensor->id)
return sensor;
}
return nullptr;
return sensor;
}
int16_t processHoTTdBm(int16_t value)
@@ -929,7 +931,7 @@ void hottSetDefault(int index, uint16_t id, uint8_t subId, uint8_t instance)
telemetrySensor.instance = instance;
const HottSensor * sensor = getHottSensor(id);
if (sensor) {
if (sensor->name) {
TelemetryUnit unit = sensor->unit;
uint8_t prec = min<uint8_t>(2, sensor->precision);
telemetrySensor.init(sensor->name, unit, prec);