From: Kenneth Graunke Date: Thu, 15 Sep 2016 09:10:24 +0000 (-0700) Subject: mesa: Move buffers-unmapped earlier in check_valid_to_render(). X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=eaacb278128ca64b170285feae58c89d16bff8a1;p=mesa.git mesa: Move buffers-unmapped earlier in check_valid_to_render(). This needs to be above the switch on API, as that can return true (valid to render) before this error check even had a chance to run. Fixes ESEXT-CTS.draw_elements_base_vertex_tests.invalid_mapped_bos, which worked before commit 72f1566f90c434c7752d8405193eec68d6743246. Signed-off-by: Kenneth Graunke Reviewed-by: Mathias Fröhlich --- diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c index b35751e4668..6cb626a5805 100644 --- a/src/mesa/main/api_validate.c +++ b/src/mesa/main/api_validate.c @@ -45,6 +45,12 @@ check_valid_to_render(struct gl_context *ctx, const char *function) return false; } + if (!_mesa_all_buffers_are_unmapped(ctx->Array.VAO)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "%s(vertex buffers are mapped)", function); + return false; + } + switch (ctx->API) { case API_OPENGLES2: /* For ES2, we can draw if we have a vertex program/shader). */ @@ -119,12 +125,6 @@ check_valid_to_render(struct gl_context *ctx, const char *function) unreachable("Invalid API value in check_valid_to_render()"); } - if (!_mesa_all_buffers_are_unmapped(ctx->Array.VAO)) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "%s(vertex buffers are mapped)", function); - return false; - } - return true; }