Fix captive_portal loading entire web_server (#9066)

This commit is contained in:
J. Nick Koston 2025-06-14 08:19:41 -05:00 committed by GitHub
parent 1c488d375f
commit 92ea697119
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 13 additions and 4 deletions

View File

@ -8,8 +8,6 @@ CONFIG_SCHEMA = cv.All(
cv.only_with_esp_idf, cv.only_with_esp_idf,
) )
AUTO_LOAD = ["web_server"]
async def to_code(config): async def to_code(config):
# Increase the maximum supported size of headers section in HTTP request packet to be processed by the server # Increase the maximum supported size of headers section in HTTP request packet to be processed by the server

View File

@ -9,10 +9,12 @@
#include "utils.h" #include "utils.h"
#include "web_server_idf.h"
#ifdef USE_WEBSERVER
#include "esphome/components/web_server/web_server.h" #include "esphome/components/web_server/web_server.h"
#include "esphome/components/web_server/list_entities.h" #include "esphome/components/web_server/list_entities.h"
#endif // USE_WEBSERVER
#include "web_server_idf.h"
namespace esphome { namespace esphome {
namespace web_server_idf { namespace web_server_idf {
@ -273,6 +275,7 @@ void AsyncResponseStream::printf(const char *fmt, ...) {
this->print(str); this->print(str);
} }
#ifdef USE_WEBSERVER
AsyncEventSource::~AsyncEventSource() { AsyncEventSource::~AsyncEventSource() {
for (auto *ses : this->sessions_) { for (auto *ses : this->sessions_) {
delete ses; // NOLINT(cppcoreguidelines-owning-memory) delete ses; // NOLINT(cppcoreguidelines-owning-memory)
@ -511,6 +514,7 @@ void AsyncEventSourceResponse::deferrable_send_state(void *source, const char *e
} }
} }
} }
#endif
} // namespace web_server_idf } // namespace web_server_idf
} // namespace esphome } // namespace esphome

View File

@ -1,6 +1,7 @@
#pragma once #pragma once
#ifdef USE_ESP_IDF #ifdef USE_ESP_IDF
#include "esphome/core/defines.h"
#include <esp_http_server.h> #include <esp_http_server.h>
#include <functional> #include <functional>
@ -12,10 +13,12 @@
#include <vector> #include <vector>
namespace esphome { namespace esphome {
#ifdef USE_WEBSERVER
namespace web_server { namespace web_server {
class WebServer; class WebServer;
class ListEntitiesIterator; class ListEntitiesIterator;
}; // namespace web_server }; // namespace web_server
#endif
namespace web_server_idf { namespace web_server_idf {
#define F(string_literal) (string_literal) #define F(string_literal) (string_literal)
@ -220,6 +223,7 @@ class AsyncWebHandler {
virtual bool isRequestHandlerTrivial() { return true; } virtual bool isRequestHandlerTrivial() { return true; }
}; };
#ifdef USE_WEBSERVER
class AsyncEventSource; class AsyncEventSource;
class AsyncEventSourceResponse; class AsyncEventSourceResponse;
@ -307,10 +311,13 @@ class AsyncEventSource : public AsyncWebHandler {
connect_handler_t on_connect_{}; connect_handler_t on_connect_{};
esphome::web_server::WebServer *web_server_; esphome::web_server::WebServer *web_server_;
}; };
#endif // USE_WEBSERVER
class DefaultHeaders { class DefaultHeaders {
friend class AsyncWebServerRequest; friend class AsyncWebServerRequest;
#ifdef USE_WEBSERVER
friend class AsyncEventSourceResponse; friend class AsyncEventSourceResponse;
#endif
public: public:
// NOLINTNEXTLINE(readability-identifier-naming) // NOLINTNEXTLINE(readability-identifier-naming)