Module: Mesa Branch: master Commit: 808da7d8ca26f71832dc94bb50180b60a5ee3af2 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=808da7d8ca26f71832dc94bb50180b60a5ee3af2
Author: Brian Paul <[email protected]> Date: Mon Jun 24 14:59:53 2013 -0600 svga: use new svga_define_texture_level() helper To get array bounds checking. Reviewed-by: Jose Fonseca <[email protected]> --- src/gallium/drivers/svga/svga_resource_texture.c | 4 ++-- src/gallium/drivers/svga/svga_resource_texture.h | 13 +++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/svga/svga_resource_texture.c b/src/gallium/drivers/svga/svga_resource_texture.c index fd07ea1..4950930 100644 --- a/src/gallium/drivers/svga/svga_resource_texture.c +++ b/src/gallium/drivers/svga/svga_resource_texture.c @@ -364,9 +364,9 @@ svga_texture_transfer_unmap(struct pipe_context *pipe, ss->texture_timestamp++; svga_age_texture_view(tex, transfer->level); if (transfer->resource->target == PIPE_TEXTURE_CUBE) - tex->defined[transfer->box.z][transfer->level] = TRUE; + svga_define_texture_level(tex, transfer->box.z, transfer->level); else - tex->defined[0][transfer->level] = TRUE; + svga_define_texture_level(tex, 0, transfer->level); } FREE(st->swbuf); diff --git a/src/gallium/drivers/svga/svga_resource_texture.h b/src/gallium/drivers/svga/svga_resource_texture.h index 58646f7..7e2e613 100644 --- a/src/gallium/drivers/svga/svga_resource_texture.h +++ b/src/gallium/drivers/svga/svga_resource_texture.h @@ -130,6 +130,19 @@ svga_age_texture_view(struct svga_texture *tex, unsigned level) } +/** + * Mark the given texture face/level as being defined. + */ +static INLINE void +svga_define_texture_level(struct svga_texture *tex, + unsigned face,unsigned level) +{ + assert(face < Elements(tex->defined)); + assert(level < Elements(tex->defined[0])); + tex->defined[face][level] = TRUE; +} + + struct pipe_resource * svga_texture_create(struct pipe_screen *screen, const struct pipe_resource *template); _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
