summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/s3v
diff options
context:
space:
mode:
authorXiang, Haihao <[email protected]>2008-08-05 11:28:54 +0800
committerXiang, Haihao <[email protected]>2008-08-05 11:34:26 +0800
commit8e8019b49ab137403ba92aef3e286f4e27049ad5 (patch)
tree2bd99df8f04c891a4da08c8fd971fb95598eae51 /src/mesa/drivers/dri/s3v
parenta3024caff1c790cf9f24476926aa62198f1e7b53 (diff)
dri: Fix write/read depth buffer issue under 16bpp mode. See bug #16646
Diffstat (limited to 'src/mesa/drivers/dri/s3v')
-rw-r--r--src/mesa/drivers/dri/s3v/s3v_span.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/s3v/s3v_span.c b/src/mesa/drivers/dri/s3v/s3v_span.c
index de78f9f6b1b..f9f7c0d1eee 100644
--- a/src/mesa/drivers/dri/s3v/s3v_span.c
+++ b/src/mesa/drivers/dri/s3v/s3v_span.c
@@ -128,6 +128,8 @@ do { \
/* 16 bit depthbuffer functions.
*/
+#define VALUE_TYPE GLushort
+
#define WRITE_DEPTH( _x, _y, d ) \
*(GLushort *)(buf + _x*2 + _y*dPriv->w*2) = d
@@ -143,6 +145,8 @@ do { \
/* 32 bit depthbuffer functions.
*/
#if 0
+#define VALUE_TYPE GLuint
+
#define WRITE_DEPTH( _x, _y, d ) \
*(GLuint *)(buf + _x*4 + _y*pitch) = d;
@@ -157,6 +161,8 @@ do { \
/* 24/8 bit interleaved depth/stencil functions
*/
#if 0
+#define VALUE_TYPE GLuint
+
#define WRITE_DEPTH( _x, _y, d ) { \
GLuint tmp = *(GLuint *)(buf + _x*4 + _y*pitch); \
tmp &= 0xff; \