diff --git a/components/mdns/mdns.c b/components/mdns/mdns.c index f3c4e9af1..5b0c9dfdc 100644 --- a/components/mdns/mdns.c +++ b/components/mdns/mdns.c @@ -4249,6 +4249,11 @@ void mdns_free() if (!_mdns_server) { return; } + + esp_event_handler_unregister(WIFI_EVENT, ESP_EVENT_ANY_ID, &event_handler); + esp_event_handler_unregister(IP_EVENT, ESP_EVENT_ANY_ID, &event_handler); + esp_event_handler_unregister(ETH_EVENT, ESP_EVENT_ANY_ID, &event_handler); + mdns_service_remove_all(_mdns_server); _mdns_service_task_stop(); for (i=0; ilock); - esp_event_handler_unregister(WIFI_EVENT, ESP_EVENT_ANY_ID, &event_handler); - esp_event_handler_unregister(IP_EVENT, ESP_EVENT_ANY_ID, &event_handler); - esp_event_handler_unregister(ETH_EVENT, ESP_EVENT_ANY_ID, &event_handler); free(_mdns_server); _mdns_server = NULL; }