diff --git a/lib/Slic3r/Fill/Concentric.pm b/lib/Slic3r/Fill/Concentric.pm index 0bb1f5061..79e6d4a6d 100644 --- a/lib/Slic3r/Fill/Concentric.pm +++ b/lib/Slic3r/Fill/Concentric.pm @@ -53,9 +53,10 @@ sub fill_surface { $last_pos = $paths[-1]->last_point; } - # clip the paths to avoid the extruder to get exactly on the first point of the loop + # clip the paths to prevent the extruder from getting exactly on the first point of the loop my $clip_length = scale($flow->nozzle_diameter) * &Slic3r::LOOP_CLIPPING_LENGTH_OVER_NOZZLE_DIAMETER; $_->clip_end($clip_length) for @paths; + @paths = grep $_->is_valid, @paths; # remove empty paths (too short, thus eaten by clipping) # TODO: return ExtrusionLoop objects to get better chained paths return { flow => $flow, no_sort => 1 }, @paths;