Modified: AppleSGLX/trunk/apple_glx_context.c (270 => 271)
--- AppleSGLX/trunk/apple_glx_context.c 2009-02-27 08:00:42 UTC (rev 270)
+++ AppleSGLX/trunk/apple_glx_context.c 2009-02-27 08:33:31 UTC (rev 271)
@@ -180,10 +180,13 @@
ac->next = context_list;
context_list = ac;
+ *ptr = ac;
+
+ apple_glx_diagnostic("%s: ac %p ac->context_obj %p\n",
+ __func__, (void *)ac, (void *)ac->context_obj);
+
unlock_context_list();
- *ptr = ac;
-
return false;
}
@@ -193,7 +196,13 @@
if(NULL == ac)
return;
+ apple_glx_diagnostic("%s: ac %p ac->context_obj %p\n",
+ __func__, (void *)ac, (void *)ac->context_obj);
+
if(apple_cgl.get_current_context() == ac->context_obj) {
+ apple_glx_diagnostic("%s: context ac->context_obj %p "
+ "is still current!\n", __func__,
+ (void *)ac->context_obj);
if(apple_cgl.set_current_context(NULL)) {
abort();
}
@@ -258,6 +267,15 @@
CGLError cglerr;
bool same_drawable = false;
+ apple_glx_diagnostic("%s: oldac %p ac %p drawable 0x%lx\n",
+ __func__, (void *)oldac, (void *)ac,
+ drawable);
+
+ apple_glx_diagnostic("%s: oldac->context_obj %p ac->context_obj %p\n",
+ __func__,
+ (void *)(oldac ? oldac->context_obj : NULL),
+ (void *)(ac ? ac->context_obj : NULL));
+
assert(NULL != dpy);
/* Reset the is_current state of the old context, if non-NULL. */
@@ -341,8 +359,10 @@
* context is already current.
*/
- if(same_drawable && ac->is_current)
+ if(same_drawable && ac->is_current) {
+ apple_glx_diagnostic("%s: same_drawable and ac->is_current\n");
return false;
+ }
cglerr = apple_cgl.set_current_context(ac->context_obj);
Modified: AppleSGLX/trunk/apple_glx_surface.c (270 => 271)
--- AppleSGLX/trunk/apple_glx_surface.c 2009-02-27 08:00:42 UTC (rev 270)
+++ AppleSGLX/trunk/apple_glx_surface.c 2009-02-27 08:33:31 UTC (rev 271)
@@ -62,6 +62,9 @@
assert(APPLE_GLX_DRAWABLE_SURFACE == d->type);
+ apple_glx_diagnostic("%s: ac->context_obj %p s->surface_id %u\n",
+ __func__, (void *)ac->context_obj, s->surface_id);
+
error = xp_attach_gl_context(ac->context_obj, s->surface_id);
if(error) {