Module: Mesa Branch: master Commit: 6e9b1d5d0d53a409085511c4e71f6098a5b36ce1 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6e9b1d5d0d53a409085511c4e71f6098a5b36ce1
Author: Brian Paul <[email protected]> Date: Thu Nov 10 18:00:24 2011 -0700 xlib: set alpha to 0xff when mapping RGB pixmaps Fixes a bunch of conform regressions. --- src/mesa/drivers/x11/xm_buffer.c | 11 +++++++++++ 1 files changed, 11 insertions(+), 0 deletions(-) diff --git a/src/mesa/drivers/x11/xm_buffer.c b/src/mesa/drivers/x11/xm_buffer.c index 6cf9f06..ea87b6d 100644 --- a/src/mesa/drivers/x11/xm_buffer.c +++ b/src/mesa/drivers/x11/xm_buffer.c @@ -477,6 +477,17 @@ xmesa_MapRenderbuffer(struct gl_context *ctx, return; } + if (xrb->Base.Format == MESA_FORMAT_ARGB8888 || + xrb->Base.Format == MESA_FORMAT_RGBA8888_REV) { + /* The original pixmap is RGB but we're returning an RGBA + * image buffer. Fill in the A values with 0xff. + */ + GLuint i, *p = (GLuint *) ximage->data; + for (i = 0; i < w * h; i++) { + p[i] |= 0xff000000; + } + } + xrb->map_ximage = ximage; /* the first row of the OpenGL image is last row of the XImage */ _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
