diff --git a/wled00/FX_fcn.cpp b/wled00/FX_fcn.cpp index f2ed3e20..d6c80731 100644 --- a/wled00/FX_fcn.cpp +++ b/wled00/FX_fcn.cpp @@ -1747,7 +1747,7 @@ void WS2812FX::enumerateLedmaps() { //WLEDMM add segment names to be used as ledmap names uint8_t segment_index = 0; for (segment &seg : _segments) { - if (seg.name != nullptr && strcmp(seg.name, "") != 0) { + if (seg.name != nullptr && strlen(seg.name) > 0) { char fileName[33]; snprintf_P(fileName, sizeof(fileName), PSTR("/lm%s.json"), seg.name); bool isFile = WLED_FS.exists(fileName); diff --git a/wled00/json.cpp b/wled00/json.cpp index a2b9514b..ac4d1ca5 100644 --- a/wled00/json.cpp +++ b/wled00/json.cpp @@ -145,9 +145,9 @@ bool deserializeSegment(JsonObject elem, byte it, byte presetId) const char * name = elem["n"].as(); size_t len = 0; if (name != nullptr) len = strlen(name); - if (len > 0 && len < 33) { + if (len > 0 && len < 32) { seg.name = new char[len+1]; - if (seg.name) strlcpy(seg.name, name, 33); + if (seg.name) strlcpy(seg.name, name, len+1); } else { // but is empty (already deleted above) elem.remove("n");