diff --git a/dlls/winemac.drv/opengl.c b/dlls/winemac.drv/opengl.c index 8625350b2cc..5197e15fbb8 100644 --- a/dlls/winemac.drv/opengl.c +++ b/dlls/winemac.drv/opengl.c @@ -4277,6 +4277,9 @@ static BOOL init_opengl(void) } } + if (!init_gl_info()) + goto failed; + /* redirect some standard OpenGL functions */ #define REDIRECT(func) \ do { p##func = opengl_funcs.gl.p_##func; opengl_funcs.gl.p_##func = macdrv_##func; } while(0) @@ -4292,13 +4295,10 @@ static BOOL init_opengl(void) /* redirect some OpenGL extension functions */ #define REDIRECT(func) \ - do { if (opengl_funcs.ext.p_##func) { p##func = opengl_funcs.ext.p_##func; opengl_funcs.ext.p_##func = macdrv_##func; } } while(0) + do { if ((p##func = wine_dlsym(opengl_handle, #func, NULL, 0))) { opengl_funcs.ext.p_##func = macdrv_##func; } } while(0) REDIRECT(glCopyColorTable); #undef REDIRECT - if (!init_gl_info()) - goto failed; - if (gluCheckExtension((GLubyte*)"GL_APPLE_flush_render", (GLubyte*)gl_info.glExtensions)) pglFlushRenderAPPLE = wine_dlsym(opengl_handle, "glFlushRenderAPPLE", NULL, 0);