diff --git a/esphome/components/ezo_pmp/ezo_pmp.cpp b/esphome/components/ezo_pmp/ezo_pmp.cpp index 4e96f392209..0edec1d2a80 100644 --- a/esphome/components/ezo_pmp/ezo_pmp.cpp +++ b/esphome/components/ezo_pmp/ezo_pmp.cpp @@ -44,10 +44,9 @@ PROGMEM_STRING_TABLE(DosingModeStrings, "None", "Volume", "Volume/Time", "Consta static void publish_dosing_mode(text_sensor::TextSensor *sensor, DosingMode mode) { if (sensor == nullptr) return; - char text[20]; + char text[DosingModeStrings::MAX_LENGTH + 1]; ESPHOME_strncpy_P(text, reinterpret_cast(DosingModeStrings::get_progmem_str(mode, DOSING_MODE_NONE)), sizeof(text)); - text[sizeof(text) - 1] = '\0'; if (sensor->state != text) sensor->publish_state(text); }