Mesa (9.2): st/mesa: move out of memory check in st_draw_vbo()

Carl Worth cworth at kemper.freedesktop.org
Wed Nov 13 01:01:16 UTC 2013


Module: Mesa
Branch: 9.2
Commit: 5dc0d13e3d1138d74efcbdbd96e45e0ec44bc717
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5dc0d13e3d1138d74efcbdbd96e45e0ec44bc717

Author: Brian Paul <brianp at vmware.com>
Date:   Mon Oct 28 18:33:32 2013 -0600

st/mesa: move out of memory check in st_draw_vbo()

Before we were only checking the st->vertex_array_out_of_memory flag
after updating array state.  But if there's two consecutive glDrawArrays
calls and the first one is skipped because of OOM, the second one should
be skipped too.

Cc: 9.2 <mesa-stable at lists.freedesktop.org>

Reviewed-by: Marek Olšák <marek.olsak at amd.com>
(cherry picked from commit d0eaf6752d6faa8a17e3270b9e64b7c09ef705c2)

---

 src/mesa/state_tracker/st_draw.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/mesa/state_tracker/st_draw.c b/src/mesa/state_tracker/st_draw.c
index a440ae2..c9d28c8 100644
--- a/src/mesa/state_tracker/st_draw.c
+++ b/src/mesa/state_tracker/st_draw.c
@@ -209,9 +209,6 @@ st_draw_vbo(struct gl_context *ctx,
    if (st->dirty.st || ctx->NewDriverState) {
       st_validate_state(st);
 
-      if (st->vertex_array_out_of_memory)
-         return;
-
 #if 0
       if (MESA_VERBOSE & VERBOSE_GLSL) {
          check_uniforms(ctx);
@@ -221,6 +218,10 @@ st_draw_vbo(struct gl_context *ctx,
 #endif
    }
 
+   if (st->vertex_array_out_of_memory) {
+      return;
+   }
+
    util_draw_init_info(&info);
    if (ib) {
       /* Get index bounds for user buffers. */




More information about the mesa-commit mailing list