Files
esphome/esphome
J. Nick Koston 7177add985 [api] Write protobuf encode output to pre-sized buffer directly
ProtoSize::calculate_size() already computes the exact encoded size
before encode() runs and is the boundary validation. The buffer is
pre-sized to match. Since the buffer size is always correct,
push_back() capacity checks on every byte are redundant overhead.

Rename ProtoWriteBuffer to ProtoWritePreSizedBuffer to document the
contract. Write through a raw uint8_t* pointer instead of push_back().
Pre-resize the buffer to include payload space before encoding.

Add ESPHOME_DEBUG_API bounds checks to validate writes stay within the
pre-sized region during development and integration testing.
2026-02-16 11:29:18 -06:00
..
2026-02-12 23:04:19 +13:00
2025-12-08 14:37:45 -05:00
2025-12-08 14:37:45 -05:00
2025-09-19 12:59:48 +00:00
2025-12-18 00:06:52 +00:00