aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/shaders/gradients
diff options
context:
space:
mode:
authorGravatar Florin Malita <fmalita@chromium.org>2018-04-25 22:18:37 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-04-26 13:50:13 +0000
commitabc8575380e031c476fec6791df4bfb3244ea928 (patch)
tree95054af1f1b48b544acb8117b6f20515504e0c92 /src/shaders/gradients
parent97126018d9d3944224676b6f4664da2a30e5ab1f (diff)
Remove stale gradient color space assert
SkGradientShaderBase asserts gammaIsLinear() -- but we don't enforce this in factories. Based on comments, this may be a stale restriction. Can we drop it? Bug: chromium:798208 Change-Id: Id9639cb2bb87f112b26c05372f2a3181c139e5ec Reviewed-on: https://skia-review.googlesource.com/123860 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
Diffstat (limited to 'src/shaders/gradients')
-rw-r--r--src/shaders/gradients/SkGradientShader.cpp11
1 files changed, 1 insertions, 10 deletions
diff --git a/src/shaders/gradients/SkGradientShader.cpp b/src/shaders/gradients/SkGradientShader.cpp
index cb138e05cc..60b9e34f79 100644
--- a/src/shaders/gradients/SkGradientShader.cpp
+++ b/src/shaders/gradients/SkGradientShader.cpp
@@ -118,6 +118,7 @@ bool SkGradientShaderBase::DescriptorScope::unflatten(SkReadBuffer& buffer) {
SkGradientShaderBase::SkGradientShaderBase(const Descriptor& desc, const SkMatrix& ptsToUnit)
: INHERITED(desc.fLocalMatrix)
, fPtsToUnit(ptsToUnit)
+ , fColorSpace(desc.fColorSpace ? desc.fColorSpace : SkColorSpace::MakeSRGBLinear())
, fColorsAreOpaque(true)
{
fPtsToUnit.getType(); // Precache so reads are threadsafe.
@@ -168,16 +169,6 @@ SkGradientShaderBase::SkGradientShaderBase(const Descriptor& desc, const SkMatri
*origColors = desc.fColors[desc.fCount - 1];
}
- if (!desc.fColorSpace) {
- // This happens if we were constructed from SkColors, so our colors are really sRGB
- fColorSpace = SkColorSpace::MakeSRGBLinear();
- } else {
- // The color space refers to the float colors, so it must be linear gamma
- // TODO: GPU code no longer requires this (see GrGradientEffect). Remove this restriction?
- SkASSERT(desc.fColorSpace->gammaIsLinear());
- fColorSpace = desc.fColorSpace;
- }
-
if (desc.fPos) {
SkScalar prev = 0;
SkScalar* origPosPtr = fOrigPos;