diff --git a/src/libslic3r/Print.cpp b/src/libslic3r/Print.cpp index 7c6290634b..3e2d9c195c 100644 --- a/src/libslic3r/Print.cpp +++ b/src/libslic3r/Print.cpp @@ -3605,7 +3605,8 @@ std::vector> Print::get_physical_unprintable_filaments(const std:: return physical_unprintables; auto get_unprintable_extruder_id = [&](unsigned int filament_idx) -> int { - int status = m_config.filament_printable.values[filament_idx]; + // filament_printable may be shorter than the filament count; get_at() clamps. + int status = m_config.filament_printable.get_at(filament_idx); for (int i = 0; i < extruder_num; ++i) { if (!(status >> i & 1)) { return i;