When a dri driver dlopen()s libGL to try and get the correct symbols (in
case libGL itself was dlopen()ed), it was using "libGL.so.1" (linux convention, doesn't work on OpenBSD). Change it to "libGL.so" so it has a hope in hell of working. I finally wrote this patch when trying to port perl's OpenGL modules ages ago and i finally decided that hacking each instance of dlopening libGL to use RTLD_GLOBAL was dumb. ok matthieu@
This commit is contained in:
parent
5e874c650c
commit
ee7fac2a85
2
dist/Mesa/src/glx/dri_common.c
vendored
2
dist/Mesa/src/glx/dri_common.c
vendored
@ -106,7 +106,7 @@ driOpenDriver(const char *driverName)
|
|||||||
int len;
|
int len;
|
||||||
|
|
||||||
/* Attempt to make sure libGL symbols will be visible to the driver */
|
/* Attempt to make sure libGL symbols will be visible to the driver */
|
||||||
glhandle = dlopen("libGL.so.1", RTLD_NOW | RTLD_GLOBAL);
|
glhandle = dlopen("libGL.so", RTLD_NOW | RTLD_GLOBAL);
|
||||||
|
|
||||||
libPaths = NULL;
|
libPaths = NULL;
|
||||||
if (geteuid() == getuid()) {
|
if (geteuid() == getuid()) {
|
||||||
|
Loading…
Reference in New Issue
Block a user