Make SkSL CPP code gen copy explicit coord status for cloned FPs
Change-Id: I1479136de8fcab32e2be661fd5fae020b319aab8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272458
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
diff --git a/src/gpu/gradients/generated/GrClampedGradientEffect.cpp b/src/gpu/gradients/generated/GrClampedGradientEffect.cpp
index 3224c7c..8437c44 100644
--- a/src/gpu/gradients/generated/GrClampedGradientEffect.cpp
+++ b/src/gpu/gradients/generated/GrClampedGradientEffect.cpp
@@ -101,8 +101,18 @@
, rightBorderColor(src.rightBorderColor)
, makePremul(src.makePremul)
, colorsAreOpaque(src.colorsAreOpaque) {
- this->registerChildProcessor(src.childProcessor(colorizer_index).clone());
- this->registerChildProcessor(src.childProcessor(gradLayout_index).clone());
+ {
+ auto clone = src.childProcessor(colorizer_index).clone();
+ clone->setSampledWithExplicitCoords(
+ src.childProcessor(colorizer_index).isSampledWithExplicitCoords());
+ this->registerChildProcessor(std::move(clone));
+ }
+ {
+ auto clone = src.childProcessor(gradLayout_index).clone();
+ clone->setSampledWithExplicitCoords(
+ src.childProcessor(gradLayout_index).isSampledWithExplicitCoords());
+ this->registerChildProcessor(std::move(clone));
+ }
}
std::unique_ptr<GrFragmentProcessor> GrClampedGradientEffect::clone() const {
return std::unique_ptr<GrFragmentProcessor>(new GrClampedGradientEffect(*this));