[hb-cairo] Fixes for sweep gradients
Make reversed angles not infloop, and
cap the number of interval repetitions
at 1000.
Fixes: https://github.com/harfbuzz/harfbuzz/issues/4055
diff --git a/src/hb-cairo-utils.cc b/src/hb-cairo-utils.cc
index ad0627c..10a811b 100644
--- a/src/hb-cairo-utils.cc
+++ b/src/hb-cairo-utils.cc
@@ -723,8 +723,9 @@
}
//assert (angles[0] + k * span <= 0 && 0 < angles[n_stops - 1] + k * span);
+ span = fabs (span);
- for (unsigned l = k; 1; l++)
+ for (unsigned l = k; l < 1000; l++)
{
for (unsigned i = 1; i < n_stops; i++)
{