diff options
author | Marek Olšák <[email protected]> | 2014-06-02 12:51:09 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2014-06-02 12:56:12 +0200 |
commit | 0d5ec2c615784929be095951f9269773a790a2dd (patch) | |
tree | f1fe6de88228b61092fe48dd24e0afa29946c3c8 /src/glx | |
parent | b206f5951cb8639041a27bfc35cd6add1127ba05 (diff) |
Revert "glx: load dri driver with RTLD_LOCAL so dlclose never fails to unload"
This reverts commit e3cc0d90e14e62a0a787b6c07a6df0f5c84039be.
It breaks too many apps and completely breaks my desktop too.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79469
We'll probably need to re-release all stable versions after this is committed.
Cc: "10.1 10.2" <[email protected]>
Diffstat (limited to 'src/glx')
-rw-r--r-- | src/glx/dri_common.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/glx/dri_common.c b/src/glx/dri_common.c index e5a3f7070aa..8bf47054a32 100644 --- a/src/glx/dri_common.c +++ b/src/glx/dri_common.c @@ -45,8 +45,8 @@ #ifndef RTLD_NOW #define RTLD_NOW 0 #endif -#ifndef RTLD_LOCAL -#define RTLD_LOCAL 0 +#ifndef RTLD_GLOBAL +#define RTLD_GLOBAL 0 #endif _X_HIDDEN void @@ -99,7 +99,7 @@ driOpenDriver(const char *driverName) int len; /* Attempt to make sure libGL symbols will be visible to the driver */ - glhandle = dlopen("libGL.so.1", RTLD_NOW | RTLD_LOCAL); + glhandle = dlopen("libGL.so.1", RTLD_NOW | RTLD_GLOBAL); libPaths = NULL; if (geteuid() == getuid()) { @@ -127,14 +127,14 @@ driOpenDriver(const char *driverName) snprintf(realDriverName, sizeof realDriverName, "%.*s/tls/%s_dri.so", len, p, driverName); InfoMessageF("OpenDriver: trying %s\n", realDriverName); - handle = dlopen(realDriverName, RTLD_NOW | RTLD_LOCAL); + handle = dlopen(realDriverName, RTLD_NOW | RTLD_GLOBAL); #endif if (handle == NULL) { snprintf(realDriverName, sizeof realDriverName, "%.*s/%s_dri.so", len, p, driverName); InfoMessageF("OpenDriver: trying %s\n", realDriverName); - handle = dlopen(realDriverName, RTLD_NOW | RTLD_LOCAL); + handle = dlopen(realDriverName, RTLD_NOW | RTLD_GLOBAL); } if (handle != NULL) |