apple_glx_waitx(dpy, gc->driContext);
}
-static void *
+void *
applegl_get_proc_address(const char *symbol)
{
return dlsym(apple_cgl_get_dl_handle(), symbol);
.wait_x = applegl_wait_x,
.bind_tex_image = NULL,
.release_tex_image = NULL,
- .get_proc_address = applegl_get_proc_address,
};
struct glx_context *
.wait_x = dri2_wait_x,
.bind_tex_image = dri2_bind_tex_image,
.release_tex_image = dri2_release_tex_image,
- .get_proc_address = NULL,
.interop_query_device_info = dri2_interop_query_device_info,
.interop_export_object = dri2_interop_export_object
};
.wait_x = dri3_wait_x,
.bind_tex_image = dri3_bind_tex_image,
.release_tex_image = dri3_release_tex_image,
- .get_proc_address = NULL,
.interop_query_device_info = dri3_interop_query_device_info,
.interop_export_object = dri3_interop_export_object
};
.wait_x = NULL,
.bind_tex_image = drisw_bind_tex_image,
.release_tex_image = drisw_release_tex_image,
- .get_proc_address = NULL,
};
static struct glx_context *
.wait_x = NULL,
.bind_tex_image = driwindows_bind_tex_image,
.release_tex_image = driwindows_release_tex_image,
- .get_proc_address = NULL,
};
static struct glx_context *
GLXDrawable drawable,
int buffer, const int *attrib_list);
void (*release_tex_image)(Display * dpy, GLXDrawable drawable, int buffer);
- void * (*get_proc_address)(const char *symbol);
int (*interop_query_device_info)(struct glx_context *ctx,
struct mesa_glinterop_device_info *out);
int (*interop_export_object)(struct glx_context *ctx,
extern int
applegl_create_display(struct glx_display *display);
+
+extern void *
+applegl_get_proc_address(const char *symbol);
#endif
extern Bool validate_renderType_against_config(const struct glx_config *config,
#endif
if (!f)
f = (gl_function) _glapi_get_proc_address((const char *) procName);
- if (!f) {
- struct glx_context *gc = __glXGetCurrentContext();
-
- if (gc != NULL && gc->vtable->get_proc_address != NULL)
- f = gc->vtable->get_proc_address((const char *) procName);
- }
+#ifdef GLX_USE_APPLEGL
+ if (!f)
+ f = applegl_get_proc_address((const char *) procName);
+#endif
}
return f;
}
.wait_x = indirect_wait_x,
.bind_tex_image = indirect_bind_tex_image,
.release_tex_image = indirect_release_tex_image,
- .get_proc_address = NULL,
};
_X_HIDDEN struct glx_context *