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

Tapani Pälli tapani.palli at intel.com
Thu Dec 1 10:19:44 UTC 2016


On 12/01/2016 12:04 AM, Ilia Mirkin 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.

I'm a bit puzzled about the API usage here, is the app attempting to 
render something without a VAO and we are having DefaultVAO in use?


> 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>
> ---
>  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;
>     }
>


More information about the mesa-dev mailing list