From c082616c6f3a06fb3bae4f3f427719c195c2282c Mon Sep 17 00:00:00 2001 From: Simon Cozens Date: Thu, 18 Feb 2021 11:39:36 +0000 Subject: [PATCH] Make hacky uniquifying thing more explicit --- Lib/fontTools/misc/bezierTools.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/Lib/fontTools/misc/bezierTools.py b/Lib/fontTools/misc/bezierTools.py index d93772177..141877d28 100644 --- a/Lib/fontTools/misc/bezierTools.py +++ b/Lib/fontTools/misc/bezierTools.py @@ -1060,11 +1060,18 @@ def _curve_curve_intersections_t( c12, c22, precision, range1=c12_range, range2=c22_range ) ) + unique_key = lambda ts: int(ts[0] / precision) seen = set() - return [ - seen.add(unique_key(ts)) or ts for ts in found if unique_key(ts) not in seen - ] + unique_values = [] + + for ts in found: + if unique_key(ts) in seen: + continue + seen.add(unique_key(ts)) + unique_values.append(ts) + + return unique_values def curveCurveIntersections(curve1, curve2):