[Xquartz-changes] [229] AppleSGLX/trunk/glx_pbuffer.c

source_changes at macosforge.org source_changes at macosforge.org
Sat Feb 21 23:07:28 PST 2009


Revision: 229
          http://trac.macosforge.org/projects/xquartz/changeset/229
Author:   gstaplin at apple.com
Date:     2009-02-21 23:07:27 -0800 (Sat, 21 Feb 2009)
Log Message:
-----------
Convert glx_pbuffer.c to use the new __glXSendError.

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

Modified: AppleSGLX/trunk/glx_pbuffer.c
===================================================================
--- AppleSGLX/trunk/glx_pbuffer.c	2009-02-22 06:55:32 UTC (rev 228)
+++ AppleSGLX/trunk/glx_pbuffer.c	2009-02-22 07:07:27 UTC (rev 229)
@@ -50,7 +50,6 @@
  */
 PUBLIC GLXPbuffer
 glXCreatePbuffer(Display *dpy, GLXFBConfig config, const int *attrib_list) {
-    GLXContext gc = __glXGetCurrentContext();
     int i, width, height;
     GLXPbuffer result;
     int errorcode;
@@ -85,20 +84,12 @@
     
     if(apple_glx_pbuffer_create(dpy, config, width, height, &errorcode, 
 				&result)) {
-	xError error;
+	/* 
+	 * apple_glx_pbuffer_create only sets the errorcode to core X11
+	 * errors. 
+	 */
+	__glXSendError(dpy, errorcode, 0, X_GLXCreatePbuffer, true);
 	
-	LockDisplay(dpy);
-	
-	error.errorCode = errorcode;
-	error.resourceID = 0;
-	error.sequenceNumber = dpy->request;
-	error.type = X_Error;
-	error.majorCode = gc->majorOpcode;
-	error.minorCode = X_GLXCreatePbuffer;
-	_XError(dpy, &error);
-	
-	UnlockDisplay(dpy);
-	
 	return None;
     }
     
@@ -122,13 +113,10 @@
 PUBLIC void
 glXQueryDrawable(Display *dpy, GLXDrawable drawable,
 		 int attribute, unsigned int *value) {
-    GLXContext gc = __glXGetCurrentContext();
     Window root;
     int x, y;
     unsigned int width, height, bd, depth;
-    xError error;
 
-
     if(apple_glx_pixmap_query(drawable, attribute, value))
 	return; /*done*/
 
@@ -147,18 +135,10 @@
 	}
 	/*FALL THROUGH*/
     }
-   
-    LockDisplay(dpy);
-    
-    error.errorCode = GLXBadDrawable;
-    error.resourceID = 0;
-    error.sequenceNumber = dpy->request;
-    error.type = X_Error;
-    error.majorCode = gc->majorOpcode;
-    error.minorCode = X_GLXGetDrawableAttributes;
-    _XError(dpy, &error);
-	
-    UnlockDisplay(dpy);
+
+
+    __glXSendError(dpy, GLXBadDrawable, drawable, X_GLXGetDrawableAttributes,
+		   false);
 }
 
 
@@ -168,8 +148,6 @@
 PUBLIC void
 glXSelectEvent(Display *dpy, GLXDrawable drawable, unsigned long mask)
 {
-    GLXContext gc = __glXGetCurrentContext();
-    xError error;
     XWindowAttributes xwattr;
     
     if(apple_glx_pbuffer_set_event_mask(drawable, mask))
@@ -184,17 +162,8 @@
 
     /* The drawable seems to be invalid.  Report an error. */
 
-    LockDisplay(dpy);
-    
-    error.errorCode = GLXBadDrawable;
-    error.resourceID = 0;
-    error.sequenceNumber = dpy->request;
-    error.type = X_Error;
-    error.majorCode = (gc) ? gc->majorOpcode : 0;
-    error.minorCode = X_GLXChangeDrawableAttributes;
-    _XError(dpy, &error);
-        
-    UnlockDisplay(dpy);
+    __glXSendError(dpy, GLXBadDrawable, drawable, 
+		   X_GLXChangeDrawableAttributes, false);
 }
 
 
@@ -204,8 +173,6 @@
 PUBLIC void
 glXGetSelectedEvent(Display *dpy, GLXDrawable drawable, unsigned long *mask)
 {
-    GLXContext gc = __glXGetCurrentContext();
-    xError error;
     XWindowAttributes xwattr;
     
     if(apple_glx_pbuffer_get_event_mask(drawable, mask))
@@ -223,17 +190,8 @@
 
     /* The drawable seems to be invalid.  Report an error. */
 
-    LockDisplay(dpy);
-    
-    error.errorCode = GLXBadDrawable;
-    error.resourceID = 0;
-    error.sequenceNumber = dpy->request;
-    error.type = X_Error;
-    error.majorCode = (gc) ? gc->majorOpcode : 0;
-    error.minorCode = X_GLXGetDrawableAttributes;
-    _XError(dpy, &error);
-        
-    UnlockDisplay(dpy);
+    __glXSendError(dpy, GLXBadDrawable, drawable, X_GLXGetDrawableAttributes,
+		   true);
 }
 
 
@@ -264,40 +222,12 @@
     visinfo = glXGetVisualFromFBConfig(dpy, config);
 
     if(NULL == visinfo) {
-	xError error;
-
-	LockDisplay(dpy);
-
-	error.errorCode = GLXBadFBConfig;
-        error.resourceID = 0;
-        error.sequenceNumber = dpy->request;
-        error.type = X_Error;
-        error.majorCode = 0;
-        error.minorCode = X_GLXCreateWindow;
-        _XError(dpy, &error);
-	
-	UnlockDisplay(dpy);
-
+	__glXSendError(dpy, GLXBadFBConfig, 0, X_GLXCreateWindow, false);
 	return None;
     }
 
     if(visinfo->visualid != XVisualIDFromVisual(xwattr.visual)) {
-	xError error;
-
-	XFree(visinfo);
-
-	LockDisplay(dpy);
-
-        error.errorCode = BadMatch;
-        error.resourceID = 0;
-        error.sequenceNumber = dpy->request;
-        error.type = X_Error;
-        error.majorCode = 0;
-        error.minorCode = X_GLXCreateWindow;
-        _XError(dpy, &error);
-
-        UnlockDisplay(dpy);
-
+	__glXSendError(dpy, BadMatch, 0, X_GLXCreateWindow, true);
 	return None;
     }
 
@@ -310,14 +240,10 @@
 PUBLIC void
 glXDestroyPixmap(Display *dpy, GLXPixmap pixmap)
 {
-    
-    xError error;
-    GLXContext gc = __glXGetCurrentContext();
-
     if(apple_glx_pixmap_destroy(dpy, pixmap))
 	return; /* The pixmap existed and we successfully destroyed it. */
 
-    __glXSendError(dpy, GLXBadPixmap, pixmap, X_GLXDestroyPixmap);
+    __glXSendError(dpy, GLXBadPixmap, pixmap, X_GLXDestroyPixmap, false);
 }
 
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/xquartz-changes/attachments/20090221/9ba257d1/attachment.html>


More information about the Xquartz-changes mailing list