1
0
mirror of https://github.com/esphome/esphome.git synced 2025-09-27 07:32:22 +01:00

[web_server_idf] Replace std::find_if with simple loop to reduce binary size

This commit is contained in:
J. Nick Koston
2025-08-02 17:22:41 -10:00
parent 296442d8f1
commit b667cc45cc

View File

@@ -423,15 +423,15 @@ void AsyncEventSourceResponse::destroy(void *ptr) {
void AsyncEventSourceResponse::deq_push_back_with_dedup_(void *source, message_generator_t *message_generator) { void AsyncEventSourceResponse::deq_push_back_with_dedup_(void *source, message_generator_t *message_generator) {
DeferredEvent item(source, message_generator); DeferredEvent item(source, message_generator);
auto iter = std::find_if(this->deferred_queue_.begin(), this->deferred_queue_.end(), // Replace std::find_if with simple loop to reduce binary size
[&item](const DeferredEvent &test) -> bool { return test == item; }); for (auto &event : this->deferred_queue_) {
if (event == item) {
if (iter != this->deferred_queue_.end()) { event = item;
(*iter) = item; return;
} else {
this->deferred_queue_.push_back(item);
} }
} }
this->deferred_queue_.push_back(item);
}
void AsyncEventSourceResponse::process_deferred_queue_() { void AsyncEventSourceResponse::process_deferred_queue_() {
while (!deferred_queue_.empty()) { while (!deferred_queue_.empty()) {