diff --git a/extension/src/openvic-extension/classes/GUILabel.cpp b/extension/src/openvic-extension/classes/GUILabel.cpp index a7eacf75..b5def5cb 100644 --- a/extension/src/openvic-extension/classes/GUILabel.cpp +++ b/extension/src/openvic-extension/classes/GUILabel.cpp @@ -2,6 +2,7 @@ #include #include +#include #include #include "openvic-extension/singletons/AssetManager.hpp" @@ -584,16 +585,19 @@ std::vector GUILabel::generate_lines_and_segments( for (int64_t idx = 0; idx < display_text.length(); ++idx) { Color new_colour = current_colour; - while (colour_it != colour_instructions.end() && idx == colour_it->first) { + for (; colour_it != colour_instructions.end(); colour_it++) { + if (idx != colour_it->first) { + break; + } if (colour_it->second == RESET_COLOUR_CODE) { new_colour = default_colour; } else { + ERR_CONTINUE(colour_codes == nullptr); const GFX::Font::colour_codes_t::const_iterator it = colour_codes->find(colour_it->second); if (it != colour_codes->end()) { new_colour = Utilities::to_godot_color(it->second); } } - ++colour_it; } if (current_colour != new_colour) {