vbo: Use the new primitive restart index helper function.

This gets the correct restart index for unsigned byte/short types when
using GL_PRIMITIVE_RESTART_FIXED_INDEX.

NOTE: This is a candidate for the 9.1 branch.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
(cherry picked from commit 1569709663)
This commit is contained in:
Kenneth Graunke 2013-05-29 08:21:14 -07:00
parent 10ccd3450d
commit 0c0d21660e
2 changed files with 3 additions and 2 deletions

View file

@ -91,7 +91,7 @@ vbo_get_minmax_index(struct gl_context *ctx,
const GLuint count)
{
const GLboolean restart = ctx->Array._PrimitiveRestart;
const GLuint restartIndex = ctx->Array._RestartIndex;
const GLuint restartIndex = _mesa_primitive_restart_index(ctx, ib->type);
const int index_size = vbo_sizeof_ib_type(ib->type);
const char *indices;
GLuint i;

View file

@ -31,6 +31,7 @@
#include "main/imports.h"
#include "main/bufferobj.h"
#include "main/macros.h"
#include "main/varray.h"
#include "vbo.h"
#include "vbo_context.h"
@ -171,7 +172,7 @@ vbo_sw_primitive_restart(struct gl_context *ctx,
GLuint sub_prim_num;
GLuint end_index;
GLuint sub_end_index;
GLuint restart_index = ctx->Array._RestartIndex;
GLuint restart_index = _mesa_primitive_restart_index(ctx, ib->type);
struct _mesa_prim temp_prim;
struct vbo_context *vbo = vbo_context(ctx);
vbo_draw_func draw_prims_func = vbo->draw_prims;