aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/glsl/ast_type.cpp
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2014-07-11 18:04:20 +0200
committermarha <marha@users.sourceforge.net>2014-07-11 18:04:20 +0200
commit3865d60ef607cbb00c819e905e40d3628b8eca29 (patch)
tree73d8064951a7abbe4897bcc25959463d08544495 /mesalib/src/glsl/ast_type.cpp
parent294a395f15dec9e7aa24b83b08f47ba54b9bd232 (diff)
parente708bebcc029873004ade4241f347ce8c58896af (diff)
downloadvcxsrv-3865d60ef607cbb00c819e905e40d3628b8eca29.tar.gz
vcxsrv-3865d60ef607cbb00c819e905e40d3628b8eca29.tar.bz2
vcxsrv-3865d60ef607cbb00c819e905e40d3628b8eca29.zip
Merge remote-tracking branch 'origin/released'
Diffstat (limited to 'mesalib/src/glsl/ast_type.cpp')
-rw-r--r--mesalib/src/glsl/ast_type.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/mesalib/src/glsl/ast_type.cpp b/mesalib/src/glsl/ast_type.cpp
index de4c1a410..b596cd59e 100644
--- a/mesalib/src/glsl/ast_type.cpp
+++ b/mesalib/src/glsl/ast_type.cpp
@@ -168,6 +168,16 @@ ast_type_qualifier::merge_qualifier(YYLTYPE *loc,
this->max_vertices = q.max_vertices;
}
+ if (q.flags.q.invocations) {
+ if (this->flags.q.invocations && this->invocations != q.invocations) {
+ _mesa_glsl_error(loc, state,
+ "geometry shader set conflicting invocations "
+ "(%d and %d)", this->invocations, q.invocations);
+ return false;
+ }
+ this->invocations = q.invocations;
+ }
+
if (state->stage == MESA_SHADER_GEOMETRY &&
state->has_explicit_attrib_stream()) {
if (q.flags.q.stream && q.stream >= state->ctx->Const.MaxVertexStreams) {