aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrPathRenderer.h
diff options
context:
space:
mode:
authorGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-08-05 13:28:55 +0000
committerGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-08-05 13:28:55 +0000
commit19dd017a6256be636ccb550752bb563c4e7caeb5 (patch)
tree8a87fee0a9ef8956c71998edb95db2205b1c2719 /src/gpu/GrPathRenderer.h
parenta62efcc1e000e4b0ee4fdb3390cadd56452ce3c1 (diff)
Fix a crash on stroking empty paths with nv_path_rendering enabled
Fix the crash by defining that GrPathRenderer::drawPath and GrPathRenderer::stencilPath are called only with non-empty paths. Adds a new test "GpuDrawPath" and tests the condition. BUG=1477 R=bsalomon@google.com Author: kkinnunen@nvidia.com Review URL: https://chromiumcodereview.appspot.com/22173002 git-svn-id: http://skia.googlecode.com/svn/trunk@10528 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/gpu/GrPathRenderer.h')
-rw-r--r--src/gpu/GrPathRenderer.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gpu/GrPathRenderer.h b/src/gpu/GrPathRenderer.h
index f1402d6b23..a64b9e3444 100644
--- a/src/gpu/GrPathRenderer.h
+++ b/src/gpu/GrPathRenderer.h
@@ -117,6 +117,7 @@ public:
const SkStrokeRec& stroke,
GrDrawTarget* target,
bool antiAlias) {
+ GrAssert(!path.isEmpty());
GrAssert(this->canDrawPath(path, stroke, target, antiAlias));
GrAssert(target->drawState()->getStencil().isDisabled() ||
kNoRestriction_StencilSupport == this->getStencilSupport(path, stroke, target));
@@ -132,6 +133,7 @@ public:
* @param target target that the path will be rendered to
*/
void stencilPath(const SkPath& path, const SkStrokeRec& stroke, GrDrawTarget* target) {
+ GrAssert(!path.isEmpty());
GrAssert(kNoSupport_StencilSupport != this->getStencilSupport(path, stroke, target));
this->onStencilPath(path, stroke, target);
}