diff --git a/WiFiManager.cpp b/WiFiManager.cpp index 5598397..ab28eb1 100644 --- a/WiFiManager.cpp +++ b/WiFiManager.cpp @@ -1061,7 +1061,7 @@ void WiFiManager::handleInfo() { page += F(""); page += F("
SSID
"); - page += WiFi.SSID(); + page += WiFi_SSID(); page += F("
"); page += F("
BSSID
"); @@ -1529,11 +1529,11 @@ bool WiFiManager::WiFi_Disconnect() { // toggle STA without persistent bool WiFiManager::WiFi_enableSTA(bool enable,bool persistent) { - WiFiMode_t currentMode = WiFi.getMode(); WiFiMode_t newMode; - bool isEnabled = (currentMode & WIFI_STA) != 0; - if(enable) newMode = (WiFiMode_t)(currentMode | WIFI_STA); - else newMode = (WiFiMode_t)(currentMode & (~WIFI_STA)); + WiFiMode_t currentMode = WiFi.getMode(); + bool isEnabled = (currentMode & WIFI_STA) != 0; + if(enable) newMode = (WiFiMode_t)(currentMode | WIFI_STA); + else newMode = (WiFiMode_t)(currentMode & (~WIFI_STA)); #ifdef ESP8266 if((isEnabled != enable) || persistent) { @@ -1586,24 +1586,16 @@ uint8_t WiFiManager::WiFi_softap_num_stations(){ } bool WiFiManager::WiFi_hasAutoConnect(){ - #ifdef ESP8266 - return WiFi.SSID() != ""; - #elif defined(ESP32) - wifi_config_t conf; - esp_wifi_get_config(WIFI_IF_STA, &conf); - const char* ssid = reinterpret_cast(conf.sta.ssid); - return ssid != ""; - #endif + return WiFi_SSID() != ""; } -const char* WiFiManager::WiFi_SSID(){ +String WiFiManager::WiFi_SSID(){ #ifdef ESP8266 return WiFi.SSID(); #elif defined(ESP32) wifi_config_t conf; esp_wifi_get_config(WIFI_IF_STA, &conf); - const char* ssid = reinterpret_cast(conf.sta.ssid); - return ssid; + return String(reinterpret_cast(conf.sta.ssid)); #endif } diff --git a/WiFiManager.h b/WiFiManager.h index 7f73305..b2411ba 100644 --- a/WiFiManager.h +++ b/WiFiManager.h @@ -267,7 +267,7 @@ class WiFiManager uint8_t WiFi_softap_num_stations(); bool WiFi_hasAutoConnect(); void WiFi_autoReconnect(); - const char* WiFi_SSID(); + String WiFi_SSID(); static void WiFiEvent(WiFiEvent_t event);