aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkLightingShader.cpp
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@chromium.org>2017-05-10 12:35:51 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-05-10 19:01:39 +0000
commit2814d9148671b8bdbf40a192dcbe485199fd3230 (patch)
tree3c4536339091d3a48bf81b7f3a381e784d53019e /src/core/SkLightingShader.cpp
parent14113bcc4e55ab6029344a46fb70aa6344587409 (diff)
clean up SkShader friends
Many SkShader subclasses are only friends to use makeColorSpace(). Our usual solution to this is to add a method on SkColorSpaceXformer that calls makeColorSpace() for us, so that only SkColorSpaceXformer needs to be a friend. Just a refactor. No image diffs. Change-Id: Icf952b739edf45f2fb8c0c35e353ef2866f4c5cc Reviewed-on: https://skia-review.googlesource.com/16370 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
Diffstat (limited to 'src/core/SkLightingShader.cpp')
-rw-r--r--src/core/SkLightingShader.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/core/SkLightingShader.cpp b/src/core/SkLightingShader.cpp
index 0442913025..ca370b0a3a 100644
--- a/src/core/SkLightingShader.cpp
+++ b/src/core/SkLightingShader.cpp
@@ -9,6 +9,7 @@
#include "SkBitmapProcShader.h"
#include "SkBitmapProcState.h"
#include "SkColor.h"
+#include "SkColorSpaceXformer.h"
#include "SkEmptyShader.h"
#include "SkLightingShader.h"
#include "SkMathPriv.h"
@@ -458,7 +459,7 @@ SkShader::Context* SkLightingShaderImpl::onMakeContext(
sk_sp<SkShader> SkLightingShaderImpl::onMakeColorSpace(SkColorSpaceXformer* xformer) const {
sk_sp<SkShader> xformedDiffuseShader =
- fDiffuseShader ? fDiffuseShader->makeColorSpace(xformer) : nullptr;
+ fDiffuseShader ? xformer->apply(fDiffuseShader.get()) : nullptr;
return SkLightingShader::Make(std::move(xformedDiffuseShader), fNormalSource,
fLights->makeColorSpace(xformer));
}