[Mesa-dev] [PATCH] mesa: only verify that enabled arrays have backing buffers

Ilia Mirkin imirkin at alum.mit.edu
Thu Dec 1 02:32:55 UTC 2016


On Wed, Nov 30, 2016 at 5:04 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
> We were previously also verifying that no backing buffers were available
> when an array wasn't enabled. This is has no basis in the spec, and it
> causes GLupeN64 to fail as a result.
>
> Fixes: c2e146f487 ("mesa: error out in indirect draw when vertex bindings mismatch")
> Cc: mesa-stable at lists.freedesktop.org
> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
> Reviewed-by: Timothy Arceri <timothy.arceri at collabora.com>
> ---

Ran this through Intel's CI, doesn't appear to regress (or fix) anything.

>  src/mesa/main/api_validate.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c
> index d3b4cab..071c16d 100644
> --- a/src/mesa/main/api_validate.c
> +++ b/src/mesa/main/api_validate.c
> @@ -925,7 +925,7 @@ valid_draw_indirect(struct gl_context *ctx,
>      * buffer bound.
>      */
>     if (_mesa_is_gles31(ctx) &&
> -       ctx->Array.VAO->_Enabled != ctx->Array.VAO->VertexAttribBufferMask) {
> +       ctx->Array.VAO->_Enabled & ~ctx->Array.VAO->VertexAttribBufferMask) {
>        _mesa_error(ctx, GL_INVALID_OPERATION, "%s(No VBO bound)", name);
>        return GL_FALSE;
>     }
> --
> 2.7.3
>


More information about the mesa-dev mailing list