-void *
-apple_glx_get_proc_address(const GLubyte * procname)
-{
- size_t len;
- void *h, *s;
- char *pname = (char *) procname;
-
- assert(NULL != procname);
- len = strlen(pname);
-
- if (len < 3) {
- return NULL;
- }
-
- if ((pname != strstr(pname, "glX")) && (pname != strstr(pname, "gl"))) {
- fprintf(stderr,
- "warning: get proc address request is not for a gl or glX function");
- return NULL;
- }
-
- /* Search using the default symbols first. */
- (void) dlerror(); /*drain dlerror */
- h = dlopen(NULL, RTLD_NOW);
- if (NULL == h) {
- fprintf(stderr, "warning: get proc address: %s\n", dlerror());
- return NULL;
- }
-
- s = dlsym(h, pname);
-
- if (NULL == s) {
- /* Try the libGL.dylib from the OpenGL.framework. */
- s = dlsym(libgl_handle, pname);
- }
-
- dlclose(h);
-
- return s;
-}
-