[Xquartz-changes] [301] AppleSGLX/trunk/apple_visual.c

source_changes at macosforge.org source_changes at macosforge.org
Mon Mar 9 20:00:52 PDT 2009


Revision: 301
          http://trac.macosforge.org/projects/xquartz/changeset/301
Author:   gstaplin at apple.com
Date:     2009-03-09 20:00:47 -0700 (Mon, 09 Mar 2009)
Log Message:
-----------
Enable the kCGLPFAMultisample bit when multisampling is requested.

Modified Paths:
--------------
    AppleSGLX/trunk/apple_visual.c

Modified: AppleSGLX/trunk/apple_visual.c
===================================================================
--- AppleSGLX/trunk/apple_visual.c	2009-03-10 02:21:16 UTC (rev 300)
+++ AppleSGLX/trunk/apple_visual.c	2009-03-10 03:00:47 UTC (rev 301)
@@ -30,6 +30,7 @@
 #include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <assert.h>
 #include <GL/gl.h>
 #include <OpenGL/OpenGL.h>
 #include <OpenGL/CGLContext.h>
@@ -37,10 +38,14 @@
 #include "apple_cgl.h"
 #include "apple_visual.h"
 
+enum {
+    MAX_ATTR = 60
+};
+
 /*mode is a __GlcontextModes*/
 void apple_visual_create_pfobj(CGLPixelFormatObj *pfobj, const void *mode,
 			       bool *double_buffered, bool offscreen) {
-    CGLPixelFormatAttribute attr[60];
+    CGLPixelFormatAttribute attr[MAX_ATTR];
     const __GLcontextModes *c = mode;
     int numattr = 0;
     GLint vsref = 0;
@@ -59,7 +64,7 @@
      * do want the closest match for the color, depth, and accum.
      */
     attr[numattr++] = kCGLPFAClosestPolicy;
-
+    
     if(c->stereoMode) 
 	attr[numattr++] = kCGLPFAStereo;
     
@@ -92,6 +97,7 @@
     }
 
     if(c->sampleBuffers > 0) {
+	attr[numattr++] = kCGLPFAMultisample;
 	attr[numattr++] = kCGLPFASampleBuffers;
         attr[numattr++] = c->sampleBuffers;
 	attr[numattr++] = kCGLPFASamples;
@@ -100,6 +106,8 @@
     
     attr[numattr++] = 0;
 
+    assert(numattr < MAX_ATTR);
+
     error = apple_cgl.choose_pixel_format(attr, pfobj, &vsref);
 
     if(error) {
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/xquartz-changes/attachments/20090309/9e0c70e4/attachment.html>


More information about the Xquartz-changes mailing list