diff options
author | caryclark <caryclark@google.com> | 2014-10-28 10:33:09 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-10-28 10:33:09 -0700 |
commit | 6f726addf3178b01949bb389ef83cf14a1d7b6b2 (patch) | |
tree | f075358dcfe429a50ba7b3c67e26c95d4dc9277d /tests/PathOpsQuadReduceOrderTest.cpp | |
parent | 8f0d69e48eef2b87d0149729adcfa058e8c42c81 (diff) |
These tests stress pathops by describing the union of circle-like paths that have tiny line segments embedded and double back to create near-coincident conditions.
The fixes include
- detect when finding the active top loops between two possible answers
- preflight chasing winding to ensure answer is consistent
- binary search more often when quadratic intersection fails
- add more failure paths when an intersect is missed
While this fixes the chrome bug, reenabling path ops in svg should be deferred until additional fixes are landed.
TBR=
BUG=421132
Review URL: https://codereview.chromium.org/633393002
Diffstat (limited to 'tests/PathOpsQuadReduceOrderTest.cpp')
-rw-r--r-- | tests/PathOpsQuadReduceOrderTest.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tests/PathOpsQuadReduceOrderTest.cpp b/tests/PathOpsQuadReduceOrderTest.cpp index 9a0bdcf308..dd2c493f78 100644 --- a/tests/PathOpsQuadReduceOrderTest.cpp +++ b/tests/PathOpsQuadReduceOrderTest.cpp @@ -56,7 +56,7 @@ static void standardTestCases(skiatest::Reporter* reporter) { for (index = firstQuadraticModLineTest; index < quadraticModEpsilonLines_count; ++index) { const SkDQuad& quad = quadraticModEpsilonLines[index]; order = reducer.reduce(quad); - if (order != 3) { + if (order != 2 && order != 3) { // FIXME: data probably is not good SkDebugf("[%d] line mod quad order=%d\n", (int) index, order); } } |