|
|
DescriptionCombine analytic edges with tolerance
If not, we sometimes would end up with only one edge for a convex path. That
either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in
release build. After the change, we should return 0 edges for such a path
because everything is totally combined.
Note that this change also makes the SkAnalyticEdge's CombineVertical function
behave more similarly to SkEdge's CombineVertical function: SkEdge only
compares fFirstY and fLastY which are integer values, which is equivalent to
setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of
SK_Fixed1). And this is intentional.
BUG=chromium:662914
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002
Committed: https://skia.googlesource.com/skia/+/451ceba3544fa1ff810378f1e9a47c7d20f48a9f
Patch Set 1 #
Messages
Total messages: 16 (12 generated)
Description was changed from ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 ========== to ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 ==========
The CQ bit was checked by liyuqian@google.com to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 ========== to ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 ==========
liyuqian@google.com changed reviewers: + caryclark@google.com, fmalita@chromium.org, reed@google.com
This CL should fix: https://bugs.chromium.org/p/chromium/issues/detail?id=662914
Description was changed from ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 ========== to ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. After the change, we should return 0 edges for such a path as everything is totally combined. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 ==========
Description was changed from ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. After the change, we should return 0 edges for such a path as everything is totally combined. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 ========== to ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. After the change, we should return 0 edges for such a path because everything is totally combined. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 ==========
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
lgtm
The CQ bit was checked by liyuqian@google.com
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Description was changed from ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. After the change, we should return 0 edges for such a path because everything is totally combined. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 ========== to ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. After the change, we should return 0 edges for such a path because everything is totally combined. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 Committed: https://skia.googlesource.com/skia/+/451ceba3544fa1ff810378f1e9a47c7d20f48a9f ==========
Message was sent while issue was closed.
Committed patchset #1 (id:1) as https://skia.googlesource.com/skia/+/451ceba3544fa1ff810378f1e9a47c7d20f48a9f
Message was sent while issue was closed.
Description was changed from ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. After the change, we should return 0 edges for such a path because everything is totally combined. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chrome:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 Committed: https://skia.googlesource.com/skia/+/451ceba3544fa1ff810378f1e9a47c7d20f48a9f ========== to ========== Combine analytic edges with tolerance If not, we sometimes would end up with only one edge for a convex path. That either triggers SkASSERT(count >= 2) failure in debug build or SIGSEGV in release build. After the change, we should return 0 edges for such a path because everything is totally combined. Note that this change also makes the SkAnalyticEdge's CombineVertical function behave more similarly to SkEdge's CombineVertical function: SkEdge only compares fFirstY and fLastY which are integer values, which is equivalent to setting our tolerance to SK_Fixed1 (our current tolerance is 0x100, 1/256 of SK_Fixed1). And this is intentional. BUG=chromium:662914 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2477373002 Committed: https://skia.googlesource.com/skia/+/451ceba3544fa1ff810378f1e9a47c7d20f48a9f ========== |