From 06c8cd5bb62dc3ef988e7ad461be0b7908ce4a6a Mon Sep 17 00:00:00 2001 From: Luke Bennett <contact@stacki.ltd> Date: Thu, 8 Dec 2022 05:32:02 +0000 Subject: [PATCH] Clear default wifi handlers on wifi_deinit Clear default wifi handlers that are set during wifi_init on wifi_deinit --- components/esp8266/source/esp_wifi.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/components/esp8266/source/esp_wifi.c b/components/esp8266/source/esp_wifi.c index 5524c3431..7e2a47db2 100644 --- a/components/esp8266/source/esp_wifi.c +++ b/components/esp8266/source/esp_wifi.c @@ -117,9 +117,15 @@ static void esp_wifi_set_debug_log() esp_err_t esp_wifi_deinit(void) { - esp_err_t err = ESP_OK; - + esp_err_t handlers_err = tcpip_adapter_clear_default_wifi_handlers(); + if (handlers_err != ESP_OK) { + ESP_LOGW(TAG, "Failed to clear Wi-Fi handlers (0x%x)", handlers_err); + return handlers_err; + } + esp_supplicant_deinit(); + + esp_err_t err = ESP_OK; err = esp_wifi_deinit_internal(); if (err != ESP_OK) { ESP_LOGE(TAG, "Failed to deinit Wi-Fi driver (0x%x)", err);