diff --git a/esphome/components/logger/logger.h b/esphome/components/logger/logger.h index 00e50b2cf6..c3e402f4bc 100644 --- a/esphome/components/logger/logger.h +++ b/esphome/components/logger/logger.h @@ -324,6 +324,7 @@ class Logger : public Component { inline void HOT write_header_to_buffer_(uint8_t level, const char *tag, int line, const char *thread_name, char *buffer, uint16_t *buffer_at, uint16_t buffer_size) { uint16_t pos = *buffer_at; + // Early return if insufficient space - intentionally don't update buffer_at to prevent partial writes if (pos + MAX_HEADER_SIZE > buffer_size) return;