aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Ethan Nicholas <ethannicholas@google.com>2018-07-24 13:41:11 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-07-24 18:13:45 +0000
commit0b63196a7eed40388a4b7b68990b45503554b290 (patch)
tree7bd98d31fa59f044735c7d2224b29b284198e93c /src
parent2587f41f2667b2add97f75583b71ebb74bc48af1 (diff)
fixed geometry shaders when canUseFragCoord is false
Bug: chromium:859705 Change-Id: Ia5c5b15bd5d12bf2d1c3265664bec2c3eaef24d2 Reviewed-on: https://skia-review.googlesource.com/143114 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src')
-rw-r--r--src/sksl/SkSLGLSLCodeGenerator.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/sksl/SkSLGLSLCodeGenerator.cpp b/src/sksl/SkSLGLSLCodeGenerator.cpp
index 76e76c3271..8766260940 100644
--- a/src/sksl/SkSLGLSLCodeGenerator.cpp
+++ b/src/sksl/SkSLGLSLCodeGenerator.cpp
@@ -798,7 +798,8 @@ void GLSLCodeGenerator::writeBinaryExpression(const BinaryExpression& b,
if (precedence >= parentPrecedence) {
this->write("(");
}
- bool positionWorkaround = Compiler::IsAssignment(b.fOperator) &&
+ bool positionWorkaround = fProgramKind == Program::Kind::kVertex_Kind &&
+ Compiler::IsAssignment(b.fOperator) &&
Expression::kFieldAccess_Kind == b.fLeft->fKind &&
is_sk_position((FieldAccess&) *b.fLeft) &&
!strstr(b.fRight->description().c_str(), "sk_RTAdjust") &&