mirror of
https://github.com/esphome/esphome.git
synced 2026-09-02 11:06:04 +00:00
d7594db6fdc69a0a96598b2de5d5ffd6d3ab9ed5
The three swap-with-copy lines in trim_freelist() inlined the construct-swap-destruct dance per call site, costing ~440 B flash on ESP32. Move the swap-shrink into a noinline private static helper so all three callers share one body. Net flash cost of vector shrinking drops to ~296 B (from ~444 B) while preserving the same RAM-reclaim behaviour. shrink_to_fit() is a non-binding hint that the toolchain ignores, so the swap-with-copy idiom is still required.
Description
ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
Readme
Multiple Licenses
605 MiB
Languages
C++
56.1%
Python
43.3%
C
0.3%
JavaScript
0.2%
