Skip to content

Commit

Permalink
meters: Properly log single-value meters
Browse files Browse the repository at this point in the history
  • Loading branch information
MattiasTF committed Jan 31, 2025
1 parent 346b3e4 commit fa1396f
Showing 1 changed file with 8 additions and 4 deletions.
12 changes: 8 additions & 4 deletions software/src/modules/meters/meters.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -896,8 +896,11 @@ void Meters::declare_value_ids(uint32_t slot, const MeterValueID new_value_ids[]
Config &value_ids = meter_slot.value_ids;
Config &values = meter_slot.values;

if (value_ids.count() != 0) {
logger.printfln("Meter in slot %u already declared %u values. Refusing to re-declare %u values.", slot, value_ids.count(), value_id_count);
size_t value_id_count_old = value_ids.count();
if (value_id_count_old != 0) {
const char *plural_s_old = value_id_count_old == 1 ? "" : "s";
const char *plural_s_new = value_id_count == 1 ? "" : "s";
logger.printfln("Meter in slot %u already declared %u value%s. Refusing to re-declare %u value%s.", slot, value_id_count_old, plural_s_old, value_id_count, plural_s_new);
return;
}

Expand Down Expand Up @@ -1018,10 +1021,11 @@ void Meters::declare_value_ids(uint32_t slot, const MeterValueID new_value_ids[]

meter_slot.values_declared = true;

const char *plural_s = total_value_id_count == 1 ? "" : "s";
if (total_value_id_count == value_id_count) {
logger.printfln("Meter in slot %u declared %u values.", slot, total_value_id_count);
logger.printfln("Meter in slot %u declared %u value%s", slot, total_value_id_count, plural_s);
} else {
logger.printfln("Meter in slot %u declared %u (%u) values.", slot, total_value_id_count, value_id_count);
logger.printfln("Meter in slot %u declared %u (%u) value%s", slot, total_value_id_count, value_id_count, plural_s);
}

if (!meters_feature_declared) {
Expand Down

0 comments on commit fa1396f

Please sign in to comment.