diff --git a/esphome/components/captive_portal/dns_server_esp32_idf.cpp b/esphome/components/captive_portal/dns_server_esp32_idf.cpp index 2327648284..740107400a 100644 --- a/esphome/components/captive_portal/dns_server_esp32_idf.cpp +++ b/esphome/components/captive_portal/dns_server_esp32_idf.cpp @@ -83,12 +83,9 @@ void DNSServer::stop() { void DNSServer::process_next_request() { // Process one request if socket is valid and data is available - if (this->socket_ != nullptr && this->socket_->ready()) { - this->process_dns_request(); + if (this->socket_ == nullptr || !this->socket_->ready()) { + return; } -} - -void DNSServer::process_dns_request() { struct sockaddr_in client_addr; socklen_t client_addr_len = sizeof(client_addr); diff --git a/esphome/components/captive_portal/dns_server_esp32_idf.h b/esphome/components/captive_portal/dns_server_esp32_idf.h index 05efd359f4..13d9def8e3 100644 --- a/esphome/components/captive_portal/dns_server_esp32_idf.h +++ b/esphome/components/captive_portal/dns_server_esp32_idf.h @@ -17,8 +17,6 @@ class DNSServer { protected: static constexpr size_t DNS_BUFFER_SIZE = 192; - void process_dns_request(); - std::unique_ptr socket_{nullptr}; network::IPAddress server_ip_; uint8_t buffer_[DNS_BUFFER_SIZE];