[Mesa-dev] [PATCH] st/mesa: move out of memory check in st_draw_vbo()

Brian Paul brianp at vmware.com
Tue Oct 29 01:37:05 CET 2013


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>
---
 src/mesa/state_tracker/st_draw.c |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/mesa/state_tracker/st_draw.c b/src/mesa/state_tracker/st_draw.c
index c357230..51bb238 100644
--- a/src/mesa/state_tracker/st_draw.c
+++ b/src/mesa/state_tracker/st_draw.c
@@ -210,9 +210,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);
@@ -222,6 +219,10 @@ st_draw_vbo(struct gl_context *ctx,
 #endif
    }
 
+   if (st->vertex_array_out_of_memory) {
+      return;
+   }
+
    util_draw_init_info(&info);
 
    if (ib) {
-- 
1.7.10.4



More information about the mesa-dev mailing list