Index: src/gpu/GrPathRenderer.h |
diff --git a/src/gpu/GrPathRenderer.h b/src/gpu/GrPathRenderer.h |
index 2390ba0f97058ac96faa916ddce6abc085828a4a..6876eed7eb0d296c2a14128700534fea394171a0 100644 |
--- a/src/gpu/GrPathRenderer.h |
+++ b/src/gpu/GrPathRenderer.h |
@@ -82,15 +82,17 @@ public: |
*/ |
struct CanDrawPathArgs { |
const GrShaderCaps* fShaderCaps; |
- const GrPipelineBuilder* fPipelineBuilder;// only used by GrStencilAndCoverPathRenderer |
const SkMatrix* fViewMatrix; |
const SkPath* fPath; |
const GrStrokeInfo* fStroke; |
bool fAntiAlias; |
+ // These next two are only used by GrStencilAndCoverPathRenderer |
+ bool fIsStencilDisabled; |
+ bool fIsStencilBufferMSAA; |
+ |
void validate() const { |
SkASSERT(fShaderCaps); |
- SkASSERT(fPipelineBuilder); |
SkASSERT(fViewMatrix); |
SkASSERT(fPath); |
SkASSERT(fStroke); |
@@ -151,11 +153,14 @@ public: |
#ifdef SK_DEBUG |
CanDrawPathArgs canArgs; |
canArgs.fShaderCaps = args.fTarget->caps()->shaderCaps(); |
- canArgs.fPipelineBuilder = args.fPipelineBuilder; |
canArgs.fViewMatrix = args.fViewMatrix; |
canArgs.fPath = args.fPath; |
canArgs.fStroke = args.fStroke; |
canArgs.fAntiAlias = args.fAntiAlias; |
+ |
+ canArgs.fIsStencilDisabled = args.fPipelineBuilder->getStencil().isDisabled(); |
+ canArgs.fIsStencilBufferMSAA = |
+ args.fPipelineBuilder->getRenderTarget()->isStencilBufferMultisampled(); |
SkASSERT(this->canDrawPath(canArgs)); |
SkASSERT(args.fPipelineBuilder->getStencil().isDisabled() || |
kNoRestriction_StencilSupport == this->getStencilSupport(*args.fPath, |