FIX: hybrid tree support crash in some case
jira: STUDIO-8313 Change-Id: Ide03d8f666232f457305f3dd298bf8151ba9c57b
This commit is contained in:
parent
658c0a5452
commit
35bf682f79
|
@ -3663,6 +3663,9 @@ const ExPolygons& TreeSupportData::calculate_avoidance(const RadiusLayerPair& ke
|
||||||
const auto &radius = key.radius;
|
const auto &radius = key.radius;
|
||||||
const auto &layer_nr = key.layer_nr;
|
const auto &layer_nr = key.layer_nr;
|
||||||
if (layer_nr == 0) {
|
if (layer_nr == 0) {
|
||||||
|
// avoid ExPolygons:~ExPolygons() in multi-threading case, as it's not thread-safe and may
|
||||||
|
// cause crash in some cases. See STUDIO-8313.
|
||||||
|
if (m_avoidance_cache.find(key) == m_avoidance_cache.end())
|
||||||
m_avoidance_cache[key] = get_collision(radius, 0);
|
m_avoidance_cache[key] = get_collision(radius, 0);
|
||||||
return m_avoidance_cache[key];
|
return m_avoidance_cache[key];
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue