[api] Remove unused reserve from APIServer constructor (#14017)

This commit is contained in:
J. Nick Koston
2026-02-16 21:30:57 -06:00
committed by GitHub
parent 6b4b8cb2f9
commit 4cd3f6c36a
2 changed files with 6 additions and 6 deletions

View File

@@ -28,11 +28,7 @@ static const char *const TAG = "api";
// APIServer
APIServer *global_api_server = nullptr; // NOLINT(cppcoreguidelines-avoid-non-const-global-variables)
APIServer::APIServer() {
global_api_server = this;
// Pre-allocate shared write buffer
shared_write_buffer_.reserve(64);
}
APIServer::APIServer() { global_api_server = this; }
void APIServer::setup() {
ControllerRegistry::register_controller(this);

View File

@@ -268,7 +268,11 @@ class APIServer : public Component,
// Vectors and strings (12 bytes each on 32-bit)
std::vector<std::unique_ptr<APIConnection>> clients_;
std::vector<uint8_t> shared_write_buffer_; // Shared proto write buffer for all connections
// Shared proto write buffer for all connections.
// Not pre-allocated: all send paths call prepare_first_message_buffer() which
// reserves the exact needed size. Pre-allocating here would cause heap fragmentation
// since the buffer would almost always reallocate on first use.
std::vector<uint8_t> shared_write_buffer_;
#ifdef USE_API_HOMEASSISTANT_STATES
std::vector<HomeAssistantStateSubscription> state_subs_;
#endif