summaryrefslogtreecommitdiffstats
path: root/src/mesa
diff options
context:
space:
mode:
authorIlia Mirkin <[email protected]>2016-05-21 19:43:42 -0400
committerIlia Mirkin <[email protected]>2016-05-23 20:03:20 -0400
commit2dabd4970477e956dd353be1a24e81aa1f0c5901 (patch)
tree51cdf4b510baefc8a18d351691551b090036c756 /src/mesa
parent2e8e1e89090ddfc95ae3b732b7b810d68c3217e5 (diff)
mesa: allow xfb to be active in GLES when geometry shader is enabled.
OES_geometry_shader has wording to allow xfb when using Draw*Indirect and DrawElements. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Anuj Phogat <[email protected]>
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/main/api_validate.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c
index a714c0a2146..c7625c3f694 100644
--- a/src/mesa/main/api_validate.c
+++ b/src/mesa/main/api_validate.c
@@ -391,7 +391,8 @@ validate_DrawElements_common(struct gl_context *ctx,
* DrawElementsInstanced, and DrawRangeElements while transform feedback
* is active and not paused, regardless of mode.
*/
- if (_mesa_is_gles3(ctx) && _mesa_is_xfb_active_and_unpaused(ctx)) {
+ if (_mesa_is_gles3(ctx) && !ctx->Extensions.OES_geometry_shader &&
+ _mesa_is_xfb_active_and_unpaused(ctx)) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"%s(transform feedback active)", caller);
return false;
@@ -741,7 +742,8 @@ valid_draw_indirect(struct gl_context *ctx,
* "An INVALID_OPERATION error is generated if
* transform feedback is active and not paused."
*/
- if (_mesa_is_gles31(ctx) && _mesa_is_xfb_active_and_unpaused(ctx)) {
+ if (_mesa_is_gles31(ctx) && !ctx->Extensions.OES_geometry_shader &&
+ _mesa_is_xfb_active_and_unpaused(ctx)) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"%s(TransformFeedback is active and not paused)", name);
}