From ff4057b6a1c83af831ad36db2a517ccca3fc5381 Mon Sep 17 00:00:00 2001 From: Thorvald Natvig Date: Tue, 1 Dec 2009 12:45:41 +0100 Subject: [PATCH] Try to promote libGL.so to global scope if we can't resolve it directly --- overlay_gl/overlay.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/overlay_gl/overlay.c b/overlay_gl/overlay.c index 31c3c7ce5..c9506798b 100644 --- a/overlay_gl/overlay.c +++ b/overlay_gl/overlay.c @@ -107,6 +107,16 @@ FDEF(glXGetProcAddress); static void resolveOpenGL() { RESOLVE(glXSwapBuffers); + + if (! oglXSwapBuffers) { + void *lib = dlopen("libGL.so.1", RTLD_GLOBAL | RTLD_NOLOAD); + if (! lib) + return; + RESOLVE(glXSwapBuffers); + if (! oglXSwapBuffers) + dlclose(lib); + } + RESOLVE(glXGetProcAddressARB); RESOLVE(glXGetProcAddress); }