aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrPath.h
diff options
context:
space:
mode:
authorGravatar stephana <stephana@google.com>2015-11-18 18:35:56 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2015-11-18 18:35:56 -0800
commit1ac3f40b4350e01459b68a5fc598d1dc9e5faa62 (patch)
treeb844a5d6fce697294af92cf1032a37cb0314bd19 /src/gpu/GrPath.h
parent5aaef1ff1a18b420b3409ec31b44c2435a4ac988 (diff)
Revert of Fix NVPR assert for equivalent ovals (patchset #1 id:1 of https://codereview.chromium.org/1457073002/ )
Reason for revert: Causes failures on Android and Win8: ... ( 137/1245MB 9) 73.9ms unit test GpuLayerCachec:\0\build\slave\workdir\build\skia\include\private\skuniqueptr.h:164: failed assertion "get() != pointer()" Caught exception 2147483651 EXCEPTION_BREAKPOINT ... Original issue's description: > Fix NVPR assert for equivalent ovals > > For oval paths, GrPath ignores the point order and only uses the bounds > when building its key. This is problematic because > > 1) point order is important when dashing > 2) GrStencilAndCoverPathRenderer asserts that the lookup SkPath is equal > to the cached SkPath - which is not the case for ovals with different > directions/different point order. > > With this CL we no longer use the reduced oval key when dashing, and > instead fall through to the more general path cases. The assert is > adjusted to accommodate "equivalent" ovals (when not dashing). > > Also re-enabled & updated the GpuDrawPath unit test (disabled in > https://codereview.chromium.org/1456463003/, presumably due to the use > of uninitialized SkRects). > > R=bsalomon@google.com,robertphillips@google.com,cdalton@nvidia.com > > Committed: https://skia.googlesource.com/skia/+/f9b1577d763988ebc043ddabf80674f71571ecff TBR=bsalomon@google.com,cdalton@nvidia.com,robertphillips@google.com,fmalita@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1461913002
Diffstat (limited to 'src/gpu/GrPath.h')
-rw-r--r--src/gpu/GrPath.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gpu/GrPath.h b/src/gpu/GrPath.h
index 2edfd4cb5e..f74baf317d 100644
--- a/src/gpu/GrPath.h
+++ b/src/gpu/GrPath.h
@@ -36,7 +36,9 @@ public:
const SkRect& getBounds() const { return fBounds; }
#ifdef SK_DEBUG
- bool isEqualTo(const SkPath& path, const GrStrokeInfo& stroke) const;
+ bool isEqualTo(const SkPath& path, const GrStrokeInfo& stroke) {
+ return fSkPath == path && fStroke.hasEqualEffect(stroke);
+ }
#endif
protected: