gysmo38 / mitsubishi2MQTT

Mitsubishi to MQTT with ESP8266 module
GNU Lesser General Public License v2.1
371 stars 133 forks source link

Compile fails with error "invalid conversion from 'char' to 'const char*'" #198

Open silverki opened 1 year ago

silverki commented 1 year ago

Also mentioned in #139

No need to downgrade, but use this patch to fix string comparison.

diff --git a/src/mitsubishi2mqtt/mitsubishi2mqtt.ino b/src/mitsubishi2mqtt/mitsubishi2mqtt.ino
index d7fb39f..e85dde3 100644
--- a/src/mitsubishi2mqtt/mitsubishi2mqtt.ino
+++ b/src/mitsubishi2mqtt/mitsubishi2mqtt.ino
@@ -234,16 +234,16 @@ void saveAdvance(String tempUnit, String supportMode, String supportFanMode, Str
   const size_t capacity = JSON_OBJECT_SIZE(4) + 200;
   DynamicJsonDocument doc(capacity);
   // if temp unit is empty, we use default celcius
-  if (tempUnit == '\0') tempUnit = "cel";
+  if (tempUnit.isEmpty()) tempUnit = "cel";
   doc["unit_tempUnit"]   = tempUnit;
   // if support mode is empty, we use default all mode
-  if (supportMode == '\0') supportMode = "all";
+  if (supportMode.isEmpty()) supportMode = "all";
   doc["support_mode"]   = supportMode;
   // if support fan mode is empty, we use default all mode
-  if (supportFanMode == '\0') supportFanMode = "allf";
+  if (supportFanMode.isEmpty()) supportFanMode = "allf";
   doc["quiet_mode"]   = supportFanMode;
   // if login password is empty, we use empty
-  if (loginPassword == '\0') loginPassword = "";
+  if (loginPassword.isEmpty()) loginPassword = "";
   doc["login_password"]   = loginPassword;
   File configFile = SPIFFS.open(advance_conf, "w");
   if (!configFile) {

string_comparison_fix.patch