Avoid passing gradient-layout Y coordinate to colorizer.
The Y coordinate isn't meant to be interpreted as a coordinate. It's
used as a side channel for the discard signal.
Change-Id: Idbdd470c78c49a8b0a28eb05a93905c95b3282d1
Bug: skia:10548
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307297
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
diff --git a/src/gpu/gradients/generated/GrTiledGradientEffect.cpp b/src/gpu/gradients/generated/GrTiledGradientEffect.cpp
index 9ad5ca7..235b9d4 100644
--- a/src/gpu/gradients/generated/GrTiledGradientEffect.cpp
+++ b/src/gpu/gradients/generated/GrTiledGradientEffect.cpp
@@ -49,8 +49,8 @@
_sample453.c_str(),
(_outer.childProcessor(1)->preservesOpaqueInput() ? "true" : "false"),
args.fOutputColor, (_outer.mirror ? "true" : "false"));
- SkString _coords1464("float2(t.xy)");
- SkString _sample1464 = this->invokeChild(0, args, _coords1464.c_str());
+ SkString _coords1451("float2(half2(t.x, 0))");
+ SkString _sample1451 = this->invokeChild(0, args, _coords1451.c_str());
fragBuilder->codeAppendf(
R"SkSL(
%s = %s;
@@ -59,7 +59,7 @@
%s.xyz *= %s.w;
}
)SkSL",
- args.fOutputColor, _sample1464.c_str(), (_outer.makePremul ? "true" : "false"),
+ args.fOutputColor, _sample1451.c_str(), (_outer.makePremul ? "true" : "false"),
args.fOutputColor, args.fOutputColor);
}