| Index: src/gpu/GrPipelineBuilder.cpp
|
| diff --git a/src/gpu/GrPipelineBuilder.cpp b/src/gpu/GrPipelineBuilder.cpp
|
| index ab185505d6e3504f728f4d83618b78fd68335977..9784cd6e37e376f61f8015c230d360b0d63b7981 100644
|
| --- a/src/gpu/GrPipelineBuilder.cpp
|
| +++ b/src/gpu/GrPipelineBuilder.cpp
|
| @@ -31,7 +31,7 @@ GrPipelineBuilder::GrPipelineBuilder(const GrPaint& paint, GrRenderTarget* rt, c
|
| fCoverageFragmentProcessors.push_back(SkRef(paint.getCoverageFragmentProcessor(i)));
|
| }
|
|
|
| - fXPFactory.reset(SkRef(paint.getXPFactory()));
|
| + fXPFactory.reset(SkSafeRef(paint.getXPFactory()));
|
|
|
| this->setRenderTarget(rt);
|
|
|
| @@ -51,8 +51,11 @@ GrPipelineBuilder::GrPipelineBuilder(const GrPaint& paint, GrRenderTarget* rt, c
|
| bool GrPipelineBuilder::willXPNeedDstTexture(const GrCaps& caps,
|
| const GrProcOptInfo& colorPOI,
|
| const GrProcOptInfo& coveragePOI) const {
|
| - return this->getXPFactory()->willNeedDstTexture(caps, colorPOI, coveragePOI,
|
| - this->hasMixedSamples());
|
| + if (this->getXPFactory()) {
|
| + return this->getXPFactory()->willNeedDstTexture(caps, colorPOI, coveragePOI,
|
| + this->hasMixedSamples());
|
| + }
|
| + return GrSrcOverWillNeedDstTexture(caps, colorPOI, coveragePOI, this->hasMixedSamples());
|
| }
|
|
|
| void GrPipelineBuilder::AutoRestoreFragmentProcessorState::set(
|
|
|