Commit 3d58a065 authored by Roderick Colenbrander's avatar Roderick Colenbrander Committed by Alexandre Julliard

wined3d: Load wglGetProcAddress from opengl32.dll instead of gdi32.dll when…

wined3d: Load wglGetProcAddress from opengl32.dll instead of gdi32.dll when USE_WIN32_OPENGL is defined.
parent 6af80e44
...@@ -414,12 +414,22 @@ BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info) { ...@@ -414,12 +414,22 @@ BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info) {
TRACE_(d3d_caps)("(%p)\n", gl_info); TRACE_(d3d_caps)("(%p)\n", gl_info);
#ifdef USE_WIN32_OPENGL
#define USE_GL_FUNC(pfn) pfn = (void*)GetProcAddress(mod_gl, (const char *) #pfn);
mod_gl = LoadLibraryA("opengl32.dll");
if(!mod_gl) {
ERR("Can't load opengl32.dll!\n");
return FALSE;
}
#else
#define USE_GL_FUNC(pfn) pfn = (void*)p_wglGetProcAddress( (const char *) #pfn);
/* To bypass the opengl32 thunks load wglGetProcAddress from gdi32 (glXGetProcAddress wrapper) instead of opengl32's */ /* To bypass the opengl32 thunks load wglGetProcAddress from gdi32 (glXGetProcAddress wrapper) instead of opengl32's */
mod_gl = LoadLibraryA("gdi32.dll"); mod_gl = LoadLibraryA("gdi32.dll");
if(!mod_gl) { if(!mod_gl) {
ERR("Can't load gdi32.dll!\n"); ERR("Can't load gdi32.dll!\n");
return FALSE; return FALSE;
} }
#endif
p_wglGetProcAddress = (void*)GetProcAddress(mod_gl, "wglGetProcAddress"); p_wglGetProcAddress = (void*)GetProcAddress(mod_gl, "wglGetProcAddress");
if(!p_wglGetProcAddress) { if(!p_wglGetProcAddress) {
...@@ -428,7 +438,6 @@ BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info) { ...@@ -428,7 +438,6 @@ BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info) {
} }
/* Dynamicly load all GL core functions */ /* Dynamicly load all GL core functions */
#define USE_GL_FUNC(pfn) pfn = (void*)p_wglGetProcAddress( (const char *) #pfn);
GL_FUNCS_GEN; GL_FUNCS_GEN;
#undef USE_GL_FUNC #undef USE_GL_FUNC
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment