Descriptionlimit the number of points in SkDashPathEffect::asPoints
If the length of a line path is sufficiently long relative to the dash
interval, it is possible to cause SkDashPathEffect::asPoints to produce
so many points that it overflows the amount that can fit in an int type,
or otherwise produce non-finite values, i.e. path from (0,0) to (0,9e15)
with a dash interval of 1.
This fixes that by capping the amount of points to a sane limit - in this
case, 1mil, since that limit is also used in utils/SkDashPath.cpp and has
precedent.
Downstream Firefox bug report: https://bugzilla.mozilla.org/show_bug.cgi?id=1287515
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165013002
Committed: https://skia.googlesource.com/skia/+/f41ae2f9738e32a43762b780e6d113b4b6157747
Patch Set 1 #
Total comments: 1
Patch Set 2 : factor out kMaxDashCount and add unit test #Patch Set 3 : fix SpecialLineRec point count overflow #
Total comments: 1
Messages
Total messages: 16 (5 generated)
|