Save some tiny amounts of RAM

- use `-D WLED_SAVE_RAM`
This commit is contained in:
Blaz Kristan
2024-08-17 15:09:41 +02:00
parent 8688777ae1
commit 8d00e4d31d
8 changed files with 196 additions and 56 deletions

View File

@@ -37,14 +37,14 @@ bool deserializeSegment(JsonObject elem, byte it, byte presetId)
Segment prev = seg; //make a backup so we can tell if something changed (calling copy constructor)
//DEBUG_PRINTF_P(PSTR("-- Duplicate segment: %p (%p)\n"), &prev, prev.data);
unsigned start = elem["start"] | seg.start;
int start = elem["start"] | seg.start;
if (stop < 0) {
int len = elem["len"];
stop = (len > 0) ? start + len : seg.stop;
}
// 2D segments
unsigned startY = elem["startY"] | seg.startY;
unsigned stopY = elem["stopY"] | seg.stopY;
int startY = elem["startY"] | seg.startY;
int stopY = elem["stopY"] | seg.stopY;
//repeat, multiplies segment until all LEDs are used, or max segments reached
bool repeat = elem["rpt"] | false;
@@ -105,7 +105,7 @@ bool deserializeSegment(JsonObject elem, byte it, byte presetId)
uint8_t set = elem[F("set")] | seg.set;
seg.set = constrain(set, 0, 3);
unsigned len = 1;
int len = 1;
if (stop > start) len = stop - start;
int offset = elem[F("of")] | INT32_MAX;
if (offset != INT32_MAX) {