| Index: src/gpu/effects/GrConfigConversionEffect.cpp
|
| diff --git a/src/gpu/effects/GrConfigConversionEffect.cpp b/src/gpu/effects/GrConfigConversionEffect.cpp
|
| index db7001758697097d7984de4d0f630ece6be6e47b..2968ae5dd88c687f05fdd07312d51c2fb177f969 100644
|
| --- a/src/gpu/effects/GrConfigConversionEffect.cpp
|
| +++ b/src/gpu/effects/GrConfigConversionEffect.cpp
|
| @@ -10,6 +10,7 @@
|
| #include "GrRenderTargetContext.h"
|
| #include "GrInvariantOutput.h"
|
| #include "GrSimpleTextureEffect.h"
|
| +#include "GrTextureProxy.h"
|
| #include "SkMatrix.h"
|
| #include "glsl/GrGLSLFragmentProcessor.h"
|
| #include "glsl/GrGLSLFragmentShaderBuilder.h"
|
| @@ -226,16 +227,16 @@ void GrConfigConversionEffect::TestForPreservingPMConversions(GrContext* context
|
| sk_sp<GrFragmentProcessor> pmToUPM1(new GrConfigConversionEffect(
|
| dataTex.get(), GrSwizzle::RGBA(), *pmToUPMRule, SkMatrix::I()));
|
| sk_sp<GrFragmentProcessor> upmToPM(new GrConfigConversionEffect(
|
| - readRTC->asTexture().get(), GrSwizzle::RGBA(), *upmToPMRule, SkMatrix::I()));
|
| + readRTC->asDeferredTexture(), GrSwizzle::RGBA(), *upmToPMRule, SkMatrix::I()));
|
| sk_sp<GrFragmentProcessor> pmToUPM2(new GrConfigConversionEffect(
|
| - tempRTC->asTexture().get(), GrSwizzle::RGBA(), *pmToUPMRule, SkMatrix::I()));
|
| + tempRTC->asDeferredTexture(), GrSwizzle::RGBA(), *pmToUPMRule, SkMatrix::I()));
|
|
|
| paint1.addColorFragmentProcessor(std::move(pmToUPM1));
|
| paint1.setPorterDuffXPFactory(SkBlendMode::kSrc);
|
|
|
| readRTC->fillRectToRect(GrNoClip(), paint1, SkMatrix::I(), kDstRect, kSrcRect);
|
|
|
| - readRTC->asTexture()->readPixels(0, 0, kSize, kSize, kConfig, firstRead);
|
| + readRTC->asDeferredTexture()->readPixels(0, 0, kSize, kSize, kConfig, firstRead);
|
|
|
| paint2.addColorFragmentProcessor(std::move(upmToPM));
|
| paint2.setPorterDuffXPFactory(SkBlendMode::kSrc);
|
| @@ -247,7 +248,7 @@ void GrConfigConversionEffect::TestForPreservingPMConversions(GrContext* context
|
|
|
| readRTC->fillRectToRect(GrNoClip(), paint3, SkMatrix::I(), kDstRect, kSrcRect);
|
|
|
| - readRTC->asTexture()->readPixels(0, 0, kSize, kSize, kConfig, secondRead);
|
| + readRTC->asDeferredTexture()->readPixels(0, 0, kSize, kSize, kConfig, secondRead);
|
|
|
| failed = false;
|
| for (int y = 0; y < kSize && !failed; ++y) {
|
|
|