Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FastLED/FastLED.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Guyer <sam.guyer@gmail.com>2021-04-29 15:50:22 +0300
committerSam Guyer <sam.guyer@gmail.com>2021-04-29 15:50:22 +0300
commit65a76c512e51a2c000c60005552ce7cd5347c88b (patch)
tree5b72b5c33ae03a925d31eb7e852843cd710fe187
parent51d2891cff0264dcb17c05939b09a27a47f87447 (diff)
Fix for issue where program calls setLEDs to change the number of LEDs
-rw-r--r--src/platforms/esp/32/clockless_rmt_esp32.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/platforms/esp/32/clockless_rmt_esp32.cpp b/src/platforms/esp/32/clockless_rmt_esp32.cpp
index 1b3b7d3f..c7691f69 100644
--- a/src/platforms/esp/32/clockless_rmt_esp32.cpp
+++ b/src/platforms/esp/32/clockless_rmt_esp32.cpp
@@ -84,10 +84,17 @@ ESP32RMTController::ESP32RMTController(int DATA_PIN, int T1, int T2, int T3, int
// the PixelController object until show is called.
uint8_t * ESP32RMTController::getPixelBuffer(int size_in_bytes)
{
+ // -- Free the old buffer if it will be too small
+ if (mPixelData != 0 and mSize < size_in_bytes) {
+ free(mPixelData);
+ mPixelData = 0;
+ }
+
if (mPixelData == 0) {
mSize = size_in_bytes;
mPixelData = (uint8_t *) malloc(mSize);
}
+
return mPixelData;
}