aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/effects
diff options
context:
space:
mode:
authorGravatar Florin Malita <fmalita@chromium.org>2017-07-06 13:39:54 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-07-06 18:03:36 +0000
commit385486089d32bbb97d79b25af9818d4d6c236500 (patch)
tree71a8c10773defee01f3e10b472f20603fc633b4b /src/effects
parentc91e3877a57ef140b688627b8c0acaafbefc9034 (diff)
Unfriend SkImageFilter subclasses
Subclasses should call SkColorSpaceXformer::apply methods, not makeColorSpace(). Change-Id: I64732641b90dd3f82e331adfd36f2c60dcf996b2 Reviewed-on: https://skia-review.googlesource.com/21724 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
Diffstat (limited to 'src/effects')
-rw-r--r--src/effects/SkDropShadowImageFilter.cpp3
-rw-r--r--src/effects/SkMergeImageFilter.cpp7
2 files changed, 4 insertions, 6 deletions
diff --git a/src/effects/SkDropShadowImageFilter.cpp b/src/effects/SkDropShadowImageFilter.cpp
index 8525573a21..f0e4c7f022 100644
--- a/src/effects/SkDropShadowImageFilter.cpp
+++ b/src/effects/SkDropShadowImageFilter.cpp
@@ -114,8 +114,7 @@ sk_sp<SkSpecialImage> SkDropShadowImageFilter::onFilterImage(SkSpecialImage* sou
sk_sp<SkImageFilter> SkDropShadowImageFilter::onMakeColorSpace(SkColorSpaceXformer* xformer) const {
SkASSERT(1 == this->countInputs());
- sk_sp<SkImageFilter> input =
- this->getInput(0) ? this->getInput(0)->makeColorSpace(xformer) : nullptr;
+ sk_sp<SkImageFilter> input = xformer->apply(this->getInput(0));
SkColor color = xformer->apply(fColor);
if (input.get() != this->getInput(0) || color != fColor) {
return SkDropShadowImageFilter::Make(fDx, fDy, fSigmaX, fSigmaY, color,
diff --git a/src/effects/SkMergeImageFilter.cpp b/src/effects/SkMergeImageFilter.cpp
index 0e882ebc4b..c84fed7571 100644
--- a/src/effects/SkMergeImageFilter.cpp
+++ b/src/effects/SkMergeImageFilter.cpp
@@ -8,6 +8,7 @@
#include "SkMergeImageFilter.h"
#include "SkCanvas.h"
+#include "SkColorSpaceXformer.h"
#include "SkReadBuffer.h"
#include "SkSpecialImage.h"
#include "SkSpecialSurface.h"
@@ -97,10 +98,8 @@ sk_sp<SkImageFilter> SkMergeImageFilter::onMakeColorSpace(SkColorSpaceXformer* x
SkSTArray<5, sk_sp<SkImageFilter>> inputs(this->countInputs());
bool changed = false;
for (int i = 0; i < this->countInputs(); i++) {
- inputs.push_back(this->getInput(i) ? this->getInput(i)->makeColorSpace(xformer) : nullptr);
- if (inputs[i].get() != this->getInput(i)) {
- changed = true;
- }
+ inputs.push_back(xformer->apply(this->getInput(i)));
+ changed |= (inputs[i].get() != this->getInput(i));
}
if (changed) {