From 7f650160efaa0481a7734e785b98ace343039b4b Mon Sep 17 00:00:00 2001 From: ille Date: Tue, 23 Apr 2019 21:03:46 +0200 Subject: [PATCH] fixes crash on esp32 in WrapperUdpLed::begin(void), _udp.begin() when HYPERION_UDP, and autoswitch false is configured --- HyperionRGB/HyperionRGB.ino | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/HyperionRGB/HyperionRGB.ino b/HyperionRGB/HyperionRGB.ino index 868230a..9bcf7fb 100644 --- a/HyperionRGB/HyperionRGB.ino +++ b/HyperionRGB/HyperionRGB.ino @@ -33,7 +33,7 @@ WrapperJsonServer jsonServer; #endif Mode activeMode; -boolean autoswitch; +boolean autoswitch, initDone; ThreadController threadController = ThreadController(); Thread statusThread = Thread(); @@ -86,7 +86,7 @@ void changeMode(Mode newMode, int interval = 0) { animationThread.setInterval(interval); break; case HYPERION_UDP: - if (!autoswitch) + if (!autoswitch && initDone) udpLed.begin(); } if (interval > 0) @@ -190,6 +190,7 @@ void handleEvents(void) { } void setup(void) { + initDone = false; LoggerInit loggerInit = LoggerInit(115200); initConfig(); @@ -239,6 +240,7 @@ void setup(void) { pinMode(LED, OUTPUT); // LED pin as output. Log.info("HEAP=%i", ESP.getFreeHeap()); + initDone = true; } void loop(void) {