summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Huddleston <jeremyhu@freedesktop.org>2009-09-23 17:41:28 -0700
committerJeremy Huddleston <jeremyhu@freedesktop.org>2009-09-27 13:53:01 -0700
commit1a0dfde2d102d845f1ceda66ad7a078aa1b42ef9 (patch)
tree0bdeb5a8d6ad6b9be9fd38751705a1c9e0167551
parent0c6423b3d52af85cd990811f7be982c0b6ed7c32 (diff)
XQuartz: GLX capabilities: Allow 16bit accumulation buffers
http://xquartz.macosforge.org/trac/ticket/308 (cherry picked from commit e9e63a2118b76b6c31c4081fec08a99e4d796e22)
-rw-r--r--hw/xquartz/GL/capabilities.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/hw/xquartz/GL/capabilities.c b/hw/xquartz/GL/capabilities.c
index 99b9eae61..43064044c 100644
--- a/hw/xquartz/GL/capabilities.c
+++ b/hw/xquartz/GL/capabilities.c
@@ -103,7 +103,7 @@ static void handleStencilModes(struct glCapabilitiesConfig *c, GLint smodes) {
}
static int handleColorAndAccumulation(struct glColorBufCapabilities *c,
- GLint cmodes) {
+ GLint cmodes, int forAccum) {
int offset = 0;
/*1*/
@@ -204,8 +204,9 @@ static int handleColorAndAccumulation(struct glColorBufCapabilities *c,
++offset;
}
-#if 0
- /*
+ if(forAccum) {
+//#if 0
+ /* FIXME
* Disable this path, because some part of libGL, X, or Xplugin
* doesn't work with sizes greater than 8.
* When this is enabled and visuals are chosen using depths
@@ -274,7 +275,8 @@ static int handleColorAndAccumulation(struct glColorBufCapabilities *c,
c[offset].a = 16;
++offset;
}
-#endif
+ }
+//#endif
/* FIXME should we handle the floating point color modes, and if so, how? */
@@ -284,14 +286,14 @@ static int handleColorAndAccumulation(struct glColorBufCapabilities *c,
static void handleColorModes(struct glCapabilitiesConfig *c, GLint cmodes) {
c->total_color_buffers = handleColorAndAccumulation(c->color_buffers,
- cmodes);
+ cmodes, 0);
assert(c->total_color_buffers < GLCAPS_COLOR_BUFFERS);
}
static void handleAccumulationModes(struct glCapabilitiesConfig *c, GLint cmodes) {
c->total_accum_buffers = handleColorAndAccumulation(c->accum_buffers,
- cmodes);
+ cmodes, 1);
assert(c->total_accum_buffers < GLCAPS_COLOR_BUFFERS);
}