Module: Mesa
Branch: master
Commit: e3eb91af804f449005a2ff535c805eaa1d579d99
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e3eb91af804f449005a2ff535c805eaa1d579d99

Author: Jason Ekstrand <[email protected]>
Date:   Mon Aug 10 01:32:23 2015 -0700

mesa/formats: Don't flip channels of null array formats

Before, if we encountered an array format of 0 on a BE system, we would
flip all the channels even though it's an invalid format.  This would
result in a mostly invalid format with a swizzle of yyyy or wwww.  Instead,
we should just return 0 if the array format stashed in the format info is
invalid.

Cc: "10.6 10.5" <[email protected]>

---

 src/mesa/main/formats.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/mesa/main/formats.c b/src/mesa/main/formats.c
index 27590ed..d7b2bae 100644
--- a/src/mesa/main/formats.c
+++ b/src/mesa/main/formats.c
@@ -380,7 +380,8 @@ uint32_t
 _mesa_format_to_array_format(mesa_format format)
 {
    const struct gl_format_info *info = _mesa_get_format_info(format);
-   if (!_mesa_little_endian() && info->Layout == MESA_FORMAT_LAYOUT_PACKED)
+   if (info->ArrayFormat && !_mesa_little_endian() &&
+       info->Layout == MESA_FORMAT_LAYOUT_PACKED)
       return _mesa_array_format_flip_channels(info->ArrayFormat);
    else
       return info->ArrayFormat;

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to