mirror of
https://github.com/esphome/esphome.git
synced 2025-07-28 14:16:40 +00:00
Fix crash when event last_event_type is null in web_server (#9266)
This commit is contained in:
parent
971bbd088c
commit
d592208c74
@ -1683,12 +1683,15 @@ void WebServer::handle_event_request(AsyncWebServerRequest *request, const UrlMa
|
||||
request->send(404);
|
||||
}
|
||||
|
||||
static std::string get_event_type(event::Event *event) { return event->last_event_type ? *event->last_event_type : ""; }
|
||||
|
||||
std::string WebServer::event_state_json_generator(WebServer *web_server, void *source) {
|
||||
return web_server->event_json((event::Event *) (source), *(((event::Event *) (source))->last_event_type),
|
||||
DETAIL_STATE);
|
||||
auto *event = static_cast<event::Event *>(source);
|
||||
return web_server->event_json(event, get_event_type(event), DETAIL_STATE);
|
||||
}
|
||||
std::string WebServer::event_all_json_generator(WebServer *web_server, void *source) {
|
||||
return web_server->event_json((event::Event *) (source), *(((event::Event *) (source))->last_event_type), DETAIL_ALL);
|
||||
auto *event = static_cast<event::Event *>(source);
|
||||
return web_server->event_json(event, get_event_type(event), DETAIL_ALL);
|
||||
}
|
||||
std::string WebServer::event_json(event::Event *obj, const std::string &event_type, JsonDetail start_config) {
|
||||
return json::build_json([this, obj, event_type, start_config](JsonObject root) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user