From a1df4f80e13460612c141e7abf142e94c3f0a59e Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Wed, 4 Mar 2026 07:24:59 -1000 Subject: [PATCH] Skip proto message dump for log and camera responses In debug builds (HAS_PROTO_MESSAGE_DUMP), skip dump logging for SubscribeLogsResponse (recursive logging risk) and CameraImageResponse (high-frequency image data noise). This matches the base branch behavior where both bypassed dump logging via direct send_message_impl() calls. --- esphome/components/api/api_connection.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/esphome/components/api/api_connection.cpp b/esphome/components/api/api_connection.cpp index ff3a3771c9..4345e5acf7 100644 --- a/esphome/components/api/api_connection.cpp +++ b/esphome/components/api/api_connection.cpp @@ -1869,7 +1869,12 @@ bool APIConnection::try_to_clear_buffer(bool log_out_of_space) { bool APIConnection::send_message_(uint32_t payload_size, uint8_t message_type, MessageEncodeFn encode_fn, const void *msg) { #ifdef HAS_PROTO_MESSAGE_DUMP - { + // Skip dump for log messages (recursive logging risk) and camera frames (high-frequency noise) + if (message_type != SubscribeLogsResponse::MESSAGE_TYPE +#ifdef USE_CAMERA + && message_type != CameraImageResponse::MESSAGE_TYPE +#endif + ) { auto *proto_msg = static_cast(msg); DumpBuffer dump_buf; this->log_send_message_(proto_msg->message_name(), proto_msg->dump_to(dump_buf));