summaryrefslogtreecommitdiffstats
path: root/src/glx/drisw_glx.c
diff options
context:
space:
mode:
authorMarc Pignat <marc@pignat.org>2011-06-28 15:21:58 +0200
committerBrian Paul <brianp@vmware.com>2011-07-15 10:09:14 -0600
commitcfec000e7514342fd51859906e173ba2d474a55c (patch)
treedfe5db5d533b42487ecc08efe4e40d11da452b36 /src/glx/drisw_glx.c
parent0d082390d903e0a6908e1d444e762a23de14174a (diff)
downloadexternal_mesa3d-cfec000e7514342fd51859906e173ba2d474a55c.zip
external_mesa3d-cfec000e7514342fd51859906e173ba2d474a55c.tar.gz
external_mesa3d-cfec000e7514342fd51859906e173ba2d474a55c.tar.bz2
drisw: Fix 24bpp software rendering, take 2
This patch add the support for 24bpp in the dri/swrast implementation. See http://bugs.freedesktop.org/show_bug.cgi?id=23525 Signed-off-by: Marc Pignat <marc at pignat.org> Signed-off-by: Brian Paul <brianp@vmware.com>
Diffstat (limited to 'src/glx/drisw_glx.c')
-rw-r--r--src/glx/drisw_glx.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/glx/drisw_glx.c b/src/glx/drisw_glx.c
index d0137ee..7bd6450 100644
--- a/src/glx/drisw_glx.c
+++ b/src/glx/drisw_glx.c
@@ -100,6 +100,13 @@ XCreateDrawable(struct drisw_drawable * pdp,
32, /* bitmap_pad */
0); /* bytes_per_line */
+ /**
+ * swrast does not handle 24-bit depth with 24 bpp, so let X do the
+ * the conversion for us.
+ */
+ if (pdp->ximage->bits_per_pixel == 24)
+ pdp->ximage->bits_per_pixel = 32;
+
return True;
}