diff --git a/esphome/components/text_sensor/filter.h b/esphome/components/text_sensor/filter.h index 4c241edcc1..fc9b15d494 100644 --- a/esphome/components/text_sensor/filter.h +++ b/esphome/components/text_sensor/filter.h @@ -131,12 +131,7 @@ bool substitute_filter_apply(const Substitution *substitutions, size_t count, st template class SubstituteFilter : public Filter { public: explicit SubstituteFilter(const std::initializer_list &substitutions) { - size_t i = 0; - for (const auto &s : substitutions) { - if (i >= N) - break; - this->substitutions_[i++] = s; - } + init_array_from(this->substitutions_, substitutions); } bool new_value(std::string &value) override { return substitute_filter_apply(this->substitutions_.data(), N, value); }