From 2abf013eb463e70a0ef6bcf4f0906cde6e0cdfcc Mon Sep 17 00:00:00 2001 From: Tomasz Duda Date: Wed, 11 Feb 2026 12:15:54 +0100 Subject: [PATCH] fix --- esphome/components/logger/log_buffer.h | 3 +++ esphome/components/logger/logger.cpp | 2 -- esphome/components/logger/task_log_buffer_esp32.cpp | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/esphome/components/logger/log_buffer.h b/esphome/components/logger/log_buffer.h index 819b289bca..3d87278248 100644 --- a/esphome/components/logger/log_buffer.h +++ b/esphome/components/logger/log_buffer.h @@ -1,5 +1,8 @@ #pragma once +#include "esphome/core/helpers.h" +#include "esphome/core/log.h" + namespace esphome::logger { // Maximum header size: 35 bytes fixed + 32 bytes tag + 16 bytes thread name = 83 bytes (45 byte safety margin) diff --git a/esphome/components/logger/logger.cpp b/esphome/components/logger/logger.cpp index 14862389ca..ab7957b330 100644 --- a/esphome/components/logger/logger.cpp +++ b/esphome/components/logger/logger.cpp @@ -80,7 +80,6 @@ void Logger::log_vprintf_non_main_thread_(uint8_t level, const char *tag, int li auto guard = this->make_non_main_task_guard_(); bool message_sent = false; -#ifdef USE_ESPHOME_TASK_LOG_BUFFER // For non-main threads/tasks, queue the message for callbacks message_sent = this->log_buffer_->send_message_thread_safe(level, tag, static_cast(line), thread_name, format, args); @@ -89,7 +88,6 @@ void Logger::log_vprintf_non_main_thread_(uint8_t level, const char *tag, int li // This is safe to call from any context including ISRs this->enable_loop_soon_any_context(); } -#endif // USE_ESPHOME_TASK_LOG_BUFFER // Emergency console logging for non-main threads when ring buffer is full or disabled // This is a fallback mechanism to ensure critical log messages are visible diff --git a/esphome/components/logger/task_log_buffer_esp32.cpp b/esphome/components/logger/task_log_buffer_esp32.cpp index 921ef16eee..e747ddc4d8 100644 --- a/esphome/components/logger/task_log_buffer_esp32.cpp +++ b/esphome/components/logger/task_log_buffer_esp32.cpp @@ -43,7 +43,7 @@ bool TaskLogBuffer::borrow_message_main_loop(LogMessage *&message, uint16_t &tex } LogMessage *msg = static_cast(received_item); - *message = msg; + message = msg; text_length = msg->text_length; this->current_token_ = received_item;