diff --git a/osu.Game/Rulesets/Objects/SliderPath.cs b/osu.Game/Rulesets/Objects/SliderPath.cs
index ae08660404..b048bf2a84 100644
--- a/osu.Game/Rulesets/Objects/SliderPath.cs
+++ b/osu.Game/Rulesets/Objects/SliderPath.cs
@@ -197,6 +197,9 @@ namespace osu.Game.Rulesets.Objects
return pointsInCurrentSegment;
}
+ ///
+ /// Handles correction of invalid path types.
+ ///
private void updatePathTypes()
{
foreach (PathControlPoint segmentStartPoint in ControlPoints.Where(p => p.Type.Value != null))
@@ -210,6 +213,13 @@ namespace osu.Game.Rulesets.Objects
}
}
+ ///
+ /// Returns whether the given points are arranged in a valid way. Invalid if points
+ /// are almost entirely linear - as this causes the radius to approach infinity,
+ /// which would exhaust memory when drawing / approximating.
+ ///
+ /// The three points that make up this circular arc segment.
+ ///
private bool validCircularArcSegment(IReadOnlyList points)
{
Vector2 a = points[0];