summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian <brian@i915.localnet.net>2008-02-25 16:22:58 -0700
committerBrian <brian@i915.localnet.net>2008-02-25 16:22:58 -0700
commit92650aeaddd1bd729f3a90383f05c8148f678066 (patch)
tree0b7e22451ba997381c270bea4a4a062a22e674bb
parentf41e95755757cb1452697fafa1dd5288390ed57e (diff)
gallium/i915: make sure state is up to date in i915_vbuf_render_get_vertex_info(), also disable bogus assertion
-rw-r--r--src/gallium/drivers/i915simple/i915_prim_vbuf.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/gallium/drivers/i915simple/i915_prim_vbuf.c b/src/gallium/drivers/i915simple/i915_prim_vbuf.c
index c5bf6174f6..9d5f609220 100644
--- a/src/gallium/drivers/i915simple/i915_prim_vbuf.c
+++ b/src/gallium/drivers/i915simple/i915_prim_vbuf.c
@@ -83,6 +83,12 @@ i915_vbuf_render_get_vertex_info( struct vbuf_render *render )
{
struct i915_vbuf_render *i915_render = i915_vbuf_render(render);
struct i915_context *i915 = i915_render->i915;
+
+ if (i915->dirty) {
+ /* make sure we have up to date vertex layout */
+ i915_update_derived( i915 );
+ }
+
return &i915->current.vertex_info;
}
@@ -143,7 +149,8 @@ i915_vbuf_render_draw( struct vbuf_render *render,
assert(nr_indices);
- assert((i915->dirty & ~I915_NEW_VBO) == 0);
+ /* this seems to be bogus, since we validate state right after this */
+ /*assert((i915->dirty & ~I915_NEW_VBO) == 0);*/
if (i915->dirty)
i915_update_derived( i915 );