Explicitly use the RTLD_LOCAL flag since that's the behavior we want.
authorSam Lantinga <slouken@libsdl.org>
Wed, 07 Aug 2013 17:26:28 -0700
changeset 75984ea0b0177a57
parent 7597 b7219f6cf67a
child 7599 bd0c15431dc9
Explicitly use the RTLD_LOCAL flag since that's the behavior we want.
The default on Linux is RTLD_LOCAL, the default on Mac OS X is RTLD_GLOBAL.
src/loadso/dlopen/SDL_sysloadso.c
     1.1 --- a/src/loadso/dlopen/SDL_sysloadso.c	Wed Aug 07 16:32:51 2013 -0700
     1.2 +++ b/src/loadso/dlopen/SDL_sysloadso.c	Wed Aug 07 17:26:28 2013 -0700
     1.3 @@ -33,7 +33,7 @@
     1.4  void *
     1.5  SDL_LoadObject(const char *sofile)
     1.6  {
     1.7 -    void *handle = dlopen(sofile, RTLD_NOW);
     1.8 +    void *handle = dlopen(sofile, RTLD_NOW|RTLD_LOCAL);
     1.9      const char *loaderror = (char *) dlerror();
    1.10      if (handle == NULL) {
    1.11          SDL_SetError("Failed loading %s: %s", sofile, loaderror);