mesa: fix GL_LUMINANCE handling in glGetTexImage
authorBrian Paul <brianp@vmware.com>
Fri, 9 Mar 2012 03:16:00 +0000 (20:16 -0700)
committerBrian Paul <brianp@vmware.com>
Fri, 9 Mar 2012 15:45:33 +0000 (08:45 -0700)
commitf5d0ced242abc9e4e777bbe374585f44399b75af
treee56e06e1b3a5e400f721e527d97c72219bf3d7c7
parent991798822346dbb2d741b1f6d62f4bcb2c889dc8
mesa: fix GL_LUMINANCE handling in glGetTexImage

There are several cases in which we need to explicity "rebase" colors
(ex: set G=B=0) when getting GL_LUMINANCE textures:
1. If the luminance texture is actually stored as rgba
2. If getting a luminance texture, but returning rgba
3. If getting an rgba texture, but returning luminance

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=46679

Also fixes the new piglit getteximage-luminance test.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
src/mesa/main/texgetimage.c