From: Iago Toral Quiroga Date: Mon, 2 Feb 2015 12:59:27 +0000 (+0100) Subject: mesa: Fix _mesa_format_convert fallback path when src is not an array format X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1b029f8a4aa85546a8932f9005373c6c34a0eb7a;p=mesa.git mesa: Fix _mesa_format_convert fallback path when src is not an array format When a rebase swizzle is provided and we call _mesa_swizzle_and_convert after unpacking the source format we were always passing normalized=false. We should pass true or false depending on the formats involved in the conversion for the byte and float paths (the integer path cannot ever be normalized). Reviewed-by: Jason Ekstrand Tested-by: Mark Janes --- diff --git a/src/mesa/main/format_utils.c b/src/mesa/main/format_utils.c index 4b44befaf4b..00061dedbfd 100644 --- a/src/mesa/main/format_utils.c +++ b/src/mesa/main/format_utils.c @@ -499,7 +499,7 @@ _mesa_format_convert(void *void_dst, uint32_t dst_format, size_t dst_stride, MESA_ARRAY_FORMAT_TYPE_FLOAT, 4, tmp_float + row * width, MESA_ARRAY_FORMAT_TYPE_FLOAT, 4, - rebase_swizzle, false, width); + rebase_swizzle, normalized, width); src += src_stride; } } @@ -543,7 +543,7 @@ _mesa_format_convert(void *void_dst, uint32_t dst_format, size_t dst_stride, MESA_ARRAY_FORMAT_TYPE_UBYTE, 4, tmp_ubyte + row * width, MESA_ARRAY_FORMAT_TYPE_UBYTE, 4, - rebase_swizzle, false, width); + rebase_swizzle, normalized, width); src += src_stride; } }