diff --git a/src/libslic3r/PrintObject.cpp b/src/libslic3r/PrintObject.cpp index 4dabfdd76..ff4233305 100644 --- a/src/libslic3r/PrintObject.cpp +++ b/src/libslic3r/PrintObject.cpp @@ -714,14 +714,13 @@ bool PrintObject::invalidate_state_by_config_options( steps.emplace_back(posPerimeters); } else if (opt_key == "gap_infill_speed" || opt_key == "filter_out_gap_fill") { // Return true if gap-fill speed has changed from zero value to non-zero or from non-zero value to zero. - // todo multi_extruders: Parameter migration between single and double extruder printers auto is_gap_fill_changed_state_due_to_speed = [&opt_key, &old_config, &new_config]() -> bool { if (opt_key == "gap_infill_speed") { - const auto *old_gap_fill_speed = old_config.option(opt_key); - const auto *new_gap_fill_speed = new_config.option(opt_key); + const auto *old_gap_fill_speed = old_config.option(opt_key); + const auto *new_gap_fill_speed = new_config.option(opt_key); assert(old_gap_fill_speed && new_gap_fill_speed); - return (old_gap_fill_speed->value > 0.f && new_gap_fill_speed->value == 0.f) || - (old_gap_fill_speed->value == 0.f && new_gap_fill_speed->value > 0.f); + return (old_gap_fill_speed->values.size() != new_gap_fill_speed->values.size()) + || (old_gap_fill_speed->values != new_gap_fill_speed->values); } return false; };