diff --git a/src/slic3r/GUI/GCodeViewer.cpp b/src/slic3r/GUI/GCodeViewer.cpp index f14b114e7f7..27b3bc5b0f0 100644 --- a/src/slic3r/GUI/GCodeViewer.cpp +++ b/src/slic3r/GUI/GCodeViewer.cpp @@ -873,8 +873,8 @@ void GCodeViewer::load_as_gcode(const GCodeProcessorResult& gcode_result, const // collect color print colors libvgcode::Palette color_print_colors; - color_print_colors.reserve(str_color_print_colors.size()); - for (const std::string& color : str_color_print_colors) { + const std::vector& str_colors = str_color_print_colors.empty() ? str_tool_colors : str_color_print_colors; + for (const std::string& color : str_colors) { color_print_colors.emplace_back(libvgcode::convert(color)); } m_viewer.set_color_print_colors(color_print_colors); diff --git a/src/slic3r/GUI/LibVGCode/LibVGCodeWrapper.cpp b/src/slic3r/GUI/LibVGCode/LibVGCodeWrapper.cpp index 23af8231031..87c4abb206c 100644 --- a/src/slic3r/GUI/LibVGCode/LibVGCodeWrapper.cpp +++ b/src/slic3r/GUI/LibVGCode/LibVGCodeWrapper.cpp @@ -745,8 +745,9 @@ GCodeInputData convert(const Slic3r::Print& print, const std::vector& str_colors = str_color_print_colors.empty() ? str_tool_colors : str_color_print_colors; + ret.color_print_colors.reserve(str_colors.size()); + for (const std::string& color : str_colors) { ret.color_print_colors.emplace_back(convert(color)); }