st/mesa: Always recalculate invalid index bounds.

These should always be sanitized before heading towards the pipe driver,
and if the calling function explicitly marked them as invalid, we need
to regenerate them.

Allows r300g to properly pass a bit more of Wine's d3d9 testing without
dropping stuff on the floor.
This commit is contained in:
Corbin Simpson 2010-03-12 02:51:40 -08:00
parent a48e17ccb0
commit 50876ddaaf
1 changed files with 3 additions and 3 deletions

View File

@ -542,9 +542,9 @@ st_draw_vbo(GLcontext *ctx,
assert(ctx->NewState == 0x0);
/* Gallium probably doesn't want this in some cases. */
if (!index_bounds_valid)
if (!vbo_all_varyings_in_vbos(arrays))
vbo_get_minmax_index(ctx, prims, ib, &min_index, &max_index);
if (index_bounds_valid != GL_TRUE) {
vbo_get_minmax_index(ctx, prims, ib, &min_index, &max_index);
}
/* sanity check for pointer arithmetic below */
assert(sizeof(arrays[0]->Ptr[0]) == 1);