[Mesa-dev] [PATCH 11/12] mesa: Only map the necessary buffer range in vbo_get_minmax_index

Brian Paul brian.e.paul at gmail.com
Mon Aug 22 06:50:58 PDT 2011


On Mon, Aug 22, 2011 at 1:33 AM, Ian Romanick <idr at feedesktop.org> wrote:
> From: Ian Romanick <ian.d.romanick at intel.com>
>
> ---
>  src/mesa/vbo/vbo_exec_array.c |   15 +++++++++++----
>  1 files changed, 11 insertions(+), 4 deletions(-)
>
> diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c
> index 484e1a8..9e194b1 100644
> --- a/src/mesa/vbo/vbo_exec_array.c
> +++ b/src/mesa/vbo/vbo_exec_array.c
> @@ -95,10 +95,17 @@ vbo_get_minmax_index(struct gl_context *ctx,
>    GLuint i;
>
>    if (_mesa_is_bufferobj(ib->obj)) {
> -      const GLvoid *map =
> -         ctx->Driver.MapBufferRange(ctx, 0, ib->obj->Size, GL_MAP_READ_BIT,
> -                                   ib->obj);
> -      indices = ADD_POINTERS(map, ib->ptr);
> +      unsigned map_size;
> +
> +      switch (ib->type) {
> +      case GL_UNSIGNED_INT:   map_size = count * sizeof(GLuint); break;
> +      case GL_UNSIGNED_SHORT: map_size = count * sizeof(GLushort); break;
> +      case GL_UNSIGNED_BYTE:  map_size = count * sizeof(GLubyte); break;

Please reformat this to:

 case GL_UNSIGNED_INT:
    map_size = count * sizeof(GLuint);
    break;

-Brian


More information about the mesa-dev mailing list