Fix #736: Check for payloads < 0 and ignore them
This commit is contained in:
parent
d508b4183e
commit
21718a9e8f
@ -197,9 +197,14 @@ void MqttHandleInverterClass::onMqttMessage(const espMqttClientTypes::MessagePro
|
||||
char* strlimit = new char[len + 1];
|
||||
memcpy(strlimit, payload, len);
|
||||
strlimit[len] = '\0';
|
||||
uint32_t payload_val = strtol(strlimit, NULL, 10);
|
||||
int32_t payload_val = strtol(strlimit, NULL, 10);
|
||||
delete[] strlimit;
|
||||
|
||||
if (payload_val < 0) {
|
||||
MessageOutput.printf("MQTT payload < 0 received --> ignoring\r\n");
|
||||
return;
|
||||
}
|
||||
|
||||
if (!strcmp(setting, TOPIC_SUB_LIMIT_PERSISTENT_RELATIVE)) {
|
||||
// Set inverter limit relative persistent
|
||||
MessageOutput.printf("Limit Persistent: %d %%\r\n", payload_val);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user