Index: src/gpu/batches/GrDefaultPathRenderer.cpp |
diff --git a/src/gpu/batches/GrDefaultPathRenderer.cpp b/src/gpu/batches/GrDefaultPathRenderer.cpp |
index 552f944cbe5dede374c2425a66a098a804548a37..7954716059f5bde88c54c5bd0be5e36d2af5edbe 100644 |
--- a/src/gpu/batches/GrDefaultPathRenderer.cpp |
+++ b/src/gpu/batches/GrDefaultPathRenderer.cpp |
@@ -13,6 +13,7 @@ |
#include "GrDefaultGeoProcFactory.h" |
#include "GrMesh.h" |
#include "GrPathUtils.h" |
+#include "GrPipelineBuilder.h" |
#include "SkGeometry.h" |
#include "SkString.h" |
#include "SkStrokeRec.h" |
@@ -554,19 +555,25 @@ |
&localMatrix)); |
SkASSERT(GrDrawFace::kBoth == drawFace[p]); |
- drawContext->drawBatch(paint, clip, *passes[p], batch, drawFace[p]); |
+ GrPipelineBuilder pipelineBuilder(paint, drawContext->mustUseHWAA(paint)); |
+ pipelineBuilder.setDrawFace(drawFace[p]); |
+ pipelineBuilder.setUserStencil(passes[p]); |
+ |
+ drawContext->drawBatch(pipelineBuilder, clip, batch); |
} else { |
SkAutoTUnref<GrDrawBatch> batch(new DefaultPathBatch(paint.getColor(), path, |
srcSpaceTol, |
newCoverage, viewMatrix, |
isHairline, devBounds)); |
- SkTCopyOnFirstWrite<GrPaint> newPaint(paint); |
+ GrPipelineBuilder pipelineBuilder(paint, drawContext->mustUseHWAA(paint)); |
+ pipelineBuilder.setDrawFace(drawFace[p]); |
+ pipelineBuilder.setUserStencil(passes[p]); |
if (passCount > 1) { |
- newPaint.writable()->setXPFactory(GrDisableColorXPFactory::Make()); |
- } |
- |
- drawContext->drawBatch(*newPaint, clip, *passes[p], batch, drawFace[p]); |
+ pipelineBuilder.setDisableColorXPFactory(); |
+ } |
+ |
+ drawContext->drawBatch(pipelineBuilder, clip, batch); |
} |
} |
return true; |