summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libvo/gl_common.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libvo/gl_common.c b/libvo/gl_common.c
index 750c904c80..f544120f68 100644
--- a/libvo/gl_common.c
+++ b/libvo/gl_common.c
@@ -1018,7 +1018,9 @@ void swapGlBuffers() {
static void *getdladdr(const char *s) {
#ifdef HAVE_LIBDL
#if defined(__sun) || defined(__sgi)
- static void *handle = dlopen(NULL, RTLD_LAZY);
+ static void *handle = NULL;
+ if (!handle)
+ handle = dlopen(NULL, RTLD_LAZY);
return dlsym(handle, s);
#else
return dlsym(0, s);