Fix exception 28 when unable to send MQTT message

Fix exception 28 when unable to send MQTT message and a topic name without a slash '/' (#12555)
This commit is contained in:
Theo Arends 2021-07-06 11:28:33 +02:00
parent 9fd3ed597f
commit d44fc80cd3
3 changed files with 6 additions and 1 deletions

View File

@ -23,6 +23,8 @@ All notable changes to this project will be documented in this file.
- Scripter moving average and sml input validation (#12541)
- Zigbee Hue angle encoding (#12545)
- AM2320 value reporting (#12552)
- Exception 28 when unable to send MQTT message and a topic name without a slash '/' (#12555)
- Wi-Fi initial setup workaround for 11n only routers (#12566)
## [9.5.0.1] 20210701
### Added

View File

@ -126,6 +126,8 @@ The latter links can be used for OTA upgrades too like ``OtaUrl http://ota.tasmo
- Scripter and Display MQTT errors due to MQTT_DATA move to String [#12525](https://github.com/arendst/Tasmota/issues/12525)
- Scripter moving average and sml input validation [#12541](https://github.com/arendst/Tasmota/issues/12541)
- Zigbee Hue angle encoding [#12545](https://github.com/arendst/Tasmota/issues/12545)
- Exception 28 when unable to send MQTT message and a topic name without a slash '/' [#12555](https://github.com/arendst/Tasmota/issues/12555)
- Wi-Fi initial setup workaround for 11n only routers [#12566](https://github.com/arendst/Tasmota/issues/12566)
### Noted
- ESP32 single core **tasmota32solo1.bin** binary can only be uploaded using the GUI as OTA upload will trigger the watchdog timer

View File

@ -640,7 +640,8 @@ void MqttPublishPayload(const char* topic, const char* payload, uint32_t binary_
log_data_topic += topic; // stat/tasmota/STATUS2
} else {
log_data_topic = F(D_LOG_RESULT); // RSL:
log_data_topic += strrchr(topic,'/')+1; // STATUS2
char *command = strrchr(topic, '/'); // If last part of topic it is always the command
log_data_topic += (command == nullptr) ? topic : command +1; // STATUS2
retained = false; // Without MQTT enabled there is no retained message
}
log_data_topic += F(" = "); // =