Protect against nans causing infinite recursion in GrPathUtils::convertCubicToQuads
Bug: skia:7427 Change-Id: I72426574be20cd41981bbb8366bda039443aa606 Reviewed-on: https://skia-review.googlesource.com/87302 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
This commit is contained in:
parent
0a241ce808
commit
27d9365d9a
@ -540,6 +540,9 @@ void convert_noninflect_cubic_to_quads(const SkPoint p[4],
|
||||
void GrPathUtils::convertCubicToQuads(const SkPoint p[4],
|
||||
SkScalar tolScale,
|
||||
SkTArray<SkPoint, true>* quads) {
|
||||
if (!p[0].isFinite() || !p[1].isFinite() || !p[2].isFinite() || !p[3].isFinite()) {
|
||||
return;
|
||||
}
|
||||
SkPoint chopped[10];
|
||||
int count = SkChopCubicAtInflections(p, chopped);
|
||||
|
||||
@ -557,6 +560,9 @@ void GrPathUtils::convertCubicToQuadsConstrainToTangents(const SkPoint p[4],
|
||||
SkScalar tolScale,
|
||||
SkPathPriv::FirstDirection dir,
|
||||
SkTArray<SkPoint, true>* quads) {
|
||||
if (!p[0].isFinite() || !p[1].isFinite() || !p[2].isFinite() || !p[3].isFinite()) {
|
||||
return;
|
||||
}
|
||||
SkPoint chopped[10];
|
||||
int count = SkChopCubicAtInflections(p, chopped);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user