diff --git a/esphome/components/api/proto.h b/esphome/components/api/proto.h index 1552be5137..552b4a4625 100644 --- a/esphome/components/api/proto.h +++ b/esphome/components/api/proto.h @@ -408,7 +408,11 @@ class DumpBuffer { size_t pos() const { return pos_; } /// Update position after buf_append_printf call void set_pos(size_t pos) { - pos_ = pos; + if (pos >= CAPACITY) { + pos_ = CAPACITY - 1; + } else { + pos_ = pos; + } buf_[pos_] = '\0'; }