[Mesa-dev] [PATCH] mesa: Fix copy-and-paste bug in do_row_3D
Brian Paul
brianp at vmware.com
Wed Feb 1 13:28:02 PST 2012
On 02/01/2012 02:21 PM, Ian Romanick wrote:
> From: Ian Romanick<ian.d.romanick at intel.com>
>
> Several of the half-float cases used 4 as the texel size when it
> should have been some smaller value.
>
> Signed-off-by: Ian Romanick<ian.d.romanick at intel.com>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=43324
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=43325
> ---
> src/mesa/main/mipmap.c | 6 +++---
> 1 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/src/mesa/main/mipmap.c b/src/mesa/main/mipmap.c
> index 03ce536..756316a 100644
> --- a/src/mesa/main/mipmap.c
> +++ b/src/mesa/main/mipmap.c
> @@ -991,7 +991,7 @@ do_row_3D(GLenum datatype, GLuint comps, GLint srcWidth,
> }
> }
> else if ((datatype == GL_HALF_FLOAT_ARB)&& (comps == 3)) {
> - DECLARE_ROW_POINTERS(GLhalfARB, 4);
> + DECLARE_ROW_POINTERS(GLhalfARB, 3);
>
> for (i = j = 0, k = k0; i< (GLuint) dstWidth;
> i++, j += colStride, k += colStride) {
> @@ -1001,7 +1001,7 @@ do_row_3D(GLenum datatype, GLuint comps, GLint srcWidth,
> }
> }
> else if ((datatype == GL_HALF_FLOAT_ARB)&& (comps == 2)) {
> - DECLARE_ROW_POINTERS(GLhalfARB, 4);
> + DECLARE_ROW_POINTERS(GLhalfARB, 2);
>
> for (i = j = 0, k = k0; i< (GLuint) dstWidth;
> i++, j += colStride, k += colStride) {
> @@ -1010,7 +1010,7 @@ do_row_3D(GLenum datatype, GLuint comps, GLint srcWidth,
> }
> }
> else if ((datatype == GL_HALF_FLOAT_ARB)&& (comps == 1)) {
> - DECLARE_ROW_POINTERS(GLhalfARB, 4);
> + DECLARE_ROW_POINTERS(GLhalfARB, 1);
>
> for (i = j = 0, k = k0; i< (GLuint) dstWidth;
> i++, j += colStride, k += colStride) {
Looks good. Reviewed-by: Brian Paul <brianp at vmware.com>
Do we actually have any piglit tests that exercise 3D mipmap
generation? I'm not sure I've ever seen an app use it, but anyway.
-Brian
More information about the mesa-dev
mailing list