From 3ffd0e8beb18184c725263cf8089fda49ce22023 Mon Sep 17 00:00:00 2001 From: Jared Dohrman Date: Sun, 24 May 2026 18:00:14 +1000 Subject: [PATCH] fix: make web server stop idempotent for OTA --- src/helpers/web/WebPanelServer.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/helpers/web/WebPanelServer.cpp b/src/helpers/web/WebPanelServer.cpp index 7da5ef98..c87e7abc 100644 --- a/src/helpers/web/WebPanelServer.cpp +++ b/src/helpers/web/WebPanelServer.cpp @@ -2865,9 +2865,10 @@ bool WebPanelServer::start() { void WebPanelServer::stop() { stopRedirectServer(); if (_server != nullptr) { - WEB_PANEL_LOG("server stopped"); - httpd_ssl_stop(_server); + httpd_handle_t server = _server; _server = nullptr; + WEB_PANEL_LOG("server stopped"); + httpd_ssl_stop(server); } _token[0] = 0; _last_activity_ms = 0; @@ -2883,9 +2884,10 @@ bool WebPanelServer::hasSessionToken() const { void WebPanelServer::stopRedirectServer() { if (_redirect_server != nullptr) { - WEB_PANEL_LOG("redirect server stopped"); - httpd_stop(_redirect_server); + httpd_handle_t redirect_server = _redirect_server; _redirect_server = nullptr; + WEB_PANEL_LOG("redirect server stopped"); + httpd_stop(redirect_server); } }