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);