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

Author: Roland Scheidegger <[email protected]>
Date:   Wed Aug 13 19:30:48 2014 +0200

mesa: fix texstore with GL_COLOR_INDEX data

This got broken by 3dbf5bf6571e0c9d3e4febce01dea82be190d9d2.
GL_COLOR_INDEX data is still supported (in legacy contexts), but the new
texstore_swizzle path cannot handle it (and didn't detect this).
Unfortunately there's no piglit test trying to specify textures with a
GL_COLOR_INDEX source format, and I don't really understand how all the color
map stuff which is used by this works, but this caused conform failures
(with a reported mesa implementation error when trying to figure out the color
mapping).

Reviewed-by: Jason Ekstrand <[email protected]>

---

 src/mesa/main/texstore.c |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c
index 50306d8..4ea5bd8 100644
--- a/src/mesa/main/texstore.c
+++ b/src/mesa/main/texstore.c
@@ -1495,6 +1495,9 @@ texstore_swizzle(TEXSTORE_PARAMS)
    if (!is_array)
       return GL_FALSE;
 
+   if (srcFormat == GL_COLOR_INDEX)
+      return GL_FALSE;
+
    switch (srcType) {
    case GL_FLOAT:
    case GL_UNSIGNED_BYTE:

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

Reply via email to