diff options
author | Roland Scheidegger <[email protected]> | 2014-08-13 19:30:48 +0200 |
---|---|---|
committer | Roland Scheidegger <[email protected]> | 2014-08-14 02:16:23 +0200 |
commit | b6d29de2c443df2aa670a70545d2e1e68ef57f45 (patch) | |
tree | 37d4d9c3675cb71886c47fdea26d9d29ee462f23 | |
parent | 64c379a3a8e397bf949705efecfc745ec4d7a843 (diff) |
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]>
-rw-r--r-- | src/mesa/main/texstore.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c index 50306d80bf8..4ea5bd80a5b 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: |