mirror of
https://github.com/HASwitchPlate/openHASP.git
synced 2025-07-28 13:46:36 +00:00
Reduce memory usage
This commit is contained in:
parent
64c516ed95
commit
f13d2f2ee5
@ -251,20 +251,16 @@ void dispatchJson(char * payload)
|
|||||||
|
|
||||||
void dispatchJsonl(char * payload)
|
void dispatchJsonl(char * payload)
|
||||||
{
|
{
|
||||||
|
uint8_t savedPage = 0;
|
||||||
DynamicJsonDocument config(3 * 128u);
|
DynamicJsonDocument config(3 * 128u);
|
||||||
size_t len = strlen(payload);
|
|
||||||
size_t maxsize = 128u * ((len / 128) + 1);
|
|
||||||
Log.verbose(F("CMND: payload %u => reserve %u"), len, maxsize);
|
|
||||||
|
|
||||||
String output((char *)0);
|
String output((char *)0);
|
||||||
StringStream stream((String &)output);
|
StringStream stream((String &)output);
|
||||||
output.reserve(maxsize);
|
output.reserve(3 * 128u);
|
||||||
stream.print(payload);
|
|
||||||
|
|
||||||
uint8_t savedPage = 0;
|
stream.print(payload);
|
||||||
while(deserializeJson(config, stream) == DeserializationError::Ok) {
|
while(deserializeJson(config, stream) == DeserializationError::Ok) {
|
||||||
serializeJson(config, Serial);
|
serializeJson(config, Serial);
|
||||||
Serial.println();
|
// Serial.println();
|
||||||
haspNewObject(config.as<JsonObject>(), savedPage);
|
haspNewObject(config.as<JsonObject>(), savedPage);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user