aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrPipeline.cpp
diff options
context:
space:
mode:
authorGravatar Robert Phillips <robertphillips@google.com>2017-05-01 13:12:20 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-05-03 16:59:37 +0000
commita91e0b7cc2537dc57ccf67914638e13b4612ffd1 (patch)
tree858fb3b4d98cb07461468f9b9ea1935f7950392e /src/gpu/GrPipeline.cpp
parent7eb86981a954c500fa4a4d8425496a5beb789e5d (diff)
Allow TextureSamplers to have null GrTexture pointer
Bug: 715488 Change-Id: I69775cbb50d334d81872e236e59368fe65e698ff Reviewed-on: https://skia-review.googlesource.com/14605 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src/gpu/GrPipeline.cpp')
-rw-r--r--src/gpu/GrPipeline.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/gpu/GrPipeline.cpp b/src/gpu/GrPipeline.cpp
index 1471b57f4f..78fb759154 100644
--- a/src/gpu/GrPipeline.cpp
+++ b/src/gpu/GrPipeline.cpp
@@ -64,15 +64,24 @@ void GrPipeline::init(const InitArgs& args) {
for (int i = 0; i < args.fProcessors->numColorFragmentProcessors(); ++i, ++currFPIdx) {
const GrFragmentProcessor* fp = args.fProcessors->colorFragmentProcessor(i);
fFragmentProcessors[currFPIdx].reset(fp);
+ if (fp->isBad()) {
+ this->markAsBad();
+ }
}
for (int i = 0; i < args.fProcessors->numCoverageFragmentProcessors(); ++i, ++currFPIdx) {
const GrFragmentProcessor* fp = args.fProcessors->coverageFragmentProcessor(i);
fFragmentProcessors[currFPIdx].reset(fp);
+ if (fp->isBad()) {
+ this->markAsBad();
+ }
}
if (args.fAppliedClip) {
if (const GrFragmentProcessor* fp = args.fAppliedClip->clipCoverageFragmentProcessor()) {
fFragmentProcessors[currFPIdx].reset(fp);
+ if (fp->isBad()) {
+ this->markAsBad();
+ }
}
}
}