From 411af080342bfca938bb57ebc00344ff269301d7 Mon Sep 17 00:00:00 2001 From: pennam Date: Wed, 21 May 2025 15:02:41 +0200 Subject: [PATCH 1/2] WiFi: fix memory leak in scanNetworks() --- libraries/WiFi/src/WiFi.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libraries/WiFi/src/WiFi.cpp b/libraries/WiFi/src/WiFi.cpp index 6ad89d619..5ea11a105 100644 --- a/libraries/WiFi/src/WiFi.cpp +++ b/libraries/WiFi/src/WiFi.cpp @@ -215,7 +215,8 @@ int8_t arduino::WiFiClass::scanNetworks() { connected_ap = SSID_MAX_COUNT; uint8_t count = SSID_MAX_COUNT; if (ap_list != nullptr) { - free(ap_list); + delete[]ap_list; + ap_list = nullptr; } ap_list = new WiFiAccessPoint[count]; return wifi_if->scan(ap_list, count); From b9163e55cbb5d805226e9e98243e35b1310fa280 Mon Sep 17 00:00:00 2001 From: pennam Date: Wed, 21 May 2025 15:03:22 +0200 Subject: [PATCH 2/2] WiFi: remove usless variable in scanNetwork --- libraries/WiFi/src/WiFi.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libraries/WiFi/src/WiFi.cpp b/libraries/WiFi/src/WiFi.cpp index 5ea11a105..ef919dbb9 100644 --- a/libraries/WiFi/src/WiFi.cpp +++ b/libraries/WiFi/src/WiFi.cpp @@ -213,13 +213,13 @@ int arduino::WiFiClass::setSSID(const char* ssid) { int8_t arduino::WiFiClass::scanNetworks() { connected_ap = SSID_MAX_COUNT; - uint8_t count = SSID_MAX_COUNT; if (ap_list != nullptr) { delete[]ap_list; ap_list = nullptr; } - ap_list = new WiFiAccessPoint[count]; - return wifi_if->scan(ap_list, count); + + ap_list = new WiFiAccessPoint[SSID_MAX_COUNT]; + return wifi_if->scan(ap_list, SSID_MAX_COUNT); } char* arduino::WiFiClass::SSID(uint8_t networkItem) { pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy