From 039cf8f423d4975c180a60fca987de2b9c798ed6 Mon Sep 17 00:00:00 2001
From: Vojtech Bubnik <bubnikv@gmail.com>
Date: Thu, 11 Feb 2021 10:41:53 +0100
Subject: [PATCH] Fix of unnecessary splitting of solid fill surfaces. This is
 a regression issue introduced in PrusaSlicer 2.3.0 with the configurable
 anchoring.

---
 src/libslic3r/Fill/Fill.cpp | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/libslic3r/Fill/Fill.cpp b/src/libslic3r/Fill/Fill.cpp
index 7b7a21f0a..e3c3eb2f2 100644
--- a/src/libslic3r/Fill/Fill.cpp
+++ b/src/libslic3r/Fill/Fill.cpp
@@ -158,6 +158,7 @@ std::vector<SurfaceFill> group_fills(const Layer &layer)
 		            params.spacing = params.flow.spacing();
 		            // Don't limit anchor length for solid or bridging infill.
 		            params.anchor_length = 1000.f;
+					params.anchor_length_max = 1000.f;
 		        } else {
 		            // it's internal infill, so we can calculate a generic flow spacing 
 		            // for all layers, for avoiding the ugly effect of
@@ -178,8 +179,8 @@ std::vector<SurfaceFill> group_fills(const Layer &layer)
 			        params.anchor_length_max = float(region_config.infill_anchor_max);
 			        if (region_config.infill_anchor_max.percent)
 			        	params.anchor_length_max = float(params.anchor_length_max * 0.01 * params.spacing);
-		        }
-		        params.anchor_length = std::min(params.anchor_length, params.anchor_length_max);
+					params.anchor_length = std::min(params.anchor_length, params.anchor_length_max);
+				}
 
 		        auto it_params = set_surface_params.find(params);
 		        if (it_params == set_surface_params.end())