mirror of
https://github.com/s00500/ESPUI.git
synced 2024-11-24 17:30:55 +00:00
Fixed bug that caused a crash when sending graphpoint updates to multiple browsers.
This commit is contained in:
parent
a18254b16b
commit
1595b3bd04
@ -857,19 +857,24 @@ void ESPUIClass::clearGraph(uint16_t id, int clientId) { }
|
||||
|
||||
void ESPUIClass::addGraphPoint(uint16_t id, int nValue, int clientId)
|
||||
{
|
||||
Control* control = getControl(id);
|
||||
if (!control)
|
||||
do // once
|
||||
{
|
||||
return;
|
||||
}
|
||||
Control* control = getControl(id);
|
||||
if (!control)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
DynamicJsonDocument document(jsonUpdateDocumentSize);
|
||||
JsonObject root = document.to<JsonObject>();
|
||||
DynamicJsonDocument document(jsonUpdateDocumentSize);
|
||||
JsonObject root = document.to<JsonObject>();
|
||||
|
||||
root[F("type")] = (int)ControlType::GraphPoint;
|
||||
root[F("value")] = nValue;
|
||||
root[F("id")] = control->id;
|
||||
SendJsonDocToWebSocket(document, clientId);
|
||||
root[F("type")] = (int)ControlType::GraphPoint;
|
||||
root[F("value")] = nValue;
|
||||
root[F("id")] = control->id;
|
||||
|
||||
SendJsonDocToWebSocket(document, clientId);
|
||||
|
||||
} while(false);
|
||||
}
|
||||
|
||||
bool ESPUIClass::SendJsonDocToWebSocket(ArduinoJson::DynamicJsonDocument& document, uint16_t clientId)
|
||||
@ -885,9 +890,9 @@ bool ESPUIClass::SendJsonDocToWebSocket(ArduinoJson::DynamicJsonDocument& docume
|
||||
}
|
||||
else
|
||||
{
|
||||
for(auto& CurrentClient : MapOfClients)
|
||||
for(auto CurrentClient : MapOfClients)
|
||||
{
|
||||
Response |= MapOfClients[clientId]->SendJsonDocToWebSocket(document);
|
||||
Response |= CurrentClient.second->SendJsonDocToWebSocket(document);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user