st/mesa: fix the texture format in st_context_teximage

Commit 1a339b6c71 made
st_ChooseTextureFormat map GL_RGBA with type GL_UNSIGNED_BYTE
to PIPE_FORMAT_A8B8G8R8_UNORM.

The image format for ARGB pixmaps is PIPE_FORMAT_B8G8R8A8_UNORM
however. This mismatch caused the texture to be recreated in
st_finalize_texture.

NOTE: This is a candidate for the 7.11 branch.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=39209
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Signed-off-by: Brian Paul <brianp@vmware.com>
This commit is contained in:
Fredrik Höglund 2011-07-19 15:25:32 -06:00 committed by Brian Paul
parent f0e306c343
commit d84791a72b
1 changed files with 1 additions and 1 deletions

View File

@ -587,7 +587,7 @@ st_context_teximage(struct st_context_iface *stctxi,
internalFormat = GL_RGB;
texFormat = st_ChooseTextureFormat(ctx, internalFormat,
GL_RGBA, GL_UNSIGNED_BYTE);
GL_BGRA, GL_UNSIGNED_BYTE);
_mesa_init_teximage_fields(ctx, target, texImage,
tex->width0, tex->height0, 1, 0,