aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/effects
diff options
context:
space:
mode:
authorGravatar Brian Salomon <bsalomon@google.com>2017-07-31 16:27:23 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-07-31 20:51:42 +0000
commit96271cd1805d55b1a985652eebd0399ebe415283 (patch)
tree951bef0f222b0eb3c087901cd810f805593e5965 /src/gpu/effects
parentf3ce7e3c673fd4ace2ca56effe4cfd2908919b9d (diff)
Require clone() be implemented by GrFragmentProcessor subclasses
Change-Id: I66ba0978e5748806d563ff4f26000e4e0095ed24 Reviewed-on: https://skia-review.googlesource.com/29042 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src/gpu/effects')
-rw-r--r--src/gpu/effects/GrXfermodeFragmentProcessor.cpp9
-rw-r--r--src/gpu/effects/GrYUVEffect.cpp6
2 files changed, 2 insertions, 13 deletions
diff --git a/src/gpu/effects/GrXfermodeFragmentProcessor.cpp b/src/gpu/effects/GrXfermodeFragmentProcessor.cpp
index 88a09e6d7a..490cb39990 100644
--- a/src/gpu/effects/GrXfermodeFragmentProcessor.cpp
+++ b/src/gpu/effects/GrXfermodeFragmentProcessor.cpp
@@ -199,9 +199,6 @@ sk_sp<GrFragmentProcessor> ComposeTwoFragmentProcessor::TestCreate(GrProcessorTe
sk_sp<GrFragmentProcessor> ComposeTwoFragmentProcessor::clone() const {
auto src = this->childProcessor(0).clone();
auto dst = this->childProcessor(1).clone();
- if (!src || !dst) {
- return nullptr;
- }
return sk_sp<GrFragmentProcessor>(
new ComposeTwoFragmentProcessor(std::move(src), std::move(dst), fMode));
}
@@ -498,12 +495,8 @@ GrGLSLFragmentProcessor* ComposeOneFragmentProcessor::onCreateGLSLInstance() con
}
sk_sp<GrFragmentProcessor> ComposeOneFragmentProcessor::clone() const {
- auto child = this->childProcessor(0).clone();
- if (!child) {
- return nullptr;
- }
return sk_sp<GrFragmentProcessor>(
- new ComposeOneFragmentProcessor(std::move(child), fMode, fChild));
+ new ComposeOneFragmentProcessor(this->childProcessor(0).clone(), fMode, fChild));
}
//////////////////////////////////////////////////////////////////////////////
diff --git a/src/gpu/effects/GrYUVEffect.cpp b/src/gpu/effects/GrYUVEffect.cpp
index 93f268a13c..5b2eb7e3ae 100644
--- a/src/gpu/effects/GrYUVEffect.cpp
+++ b/src/gpu/effects/GrYUVEffect.cpp
@@ -250,11 +250,7 @@ public:
const char* name() const override { return "RGBToYUV"; }
sk_sp<GrFragmentProcessor> clone() const override {
- auto child = this->childProcessor(0).clone();
- if (!child) {
- return nullptr;
- }
- return Make(std::move(child), fColorSpace, fOutputChannels);
+ return Make(this->childProcessor(0).clone(), fColorSpace, fOutputChannels);
}
SkYUVColorSpace getColorSpace() const { return fColorSpace; }