dri: Also support the loader with libudev.so.0.
As far as I know, this should be safe. If not, we have to decide whether to have variable lookup of the functions, or just drop support for .so.0 (which is a year and a half old it looks like) Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=74127 Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
parent
dc00ec154b
commit
63546b8e3d
|
@ -102,6 +102,16 @@ udev_dlopen_handle(void)
|
||||||
{
|
{
|
||||||
if (!udev_handle) {
|
if (!udev_handle) {
|
||||||
udev_handle = dlopen("libudev.so.1", RTLD_LOCAL | RTLD_LAZY);
|
udev_handle = dlopen("libudev.so.1", RTLD_LOCAL | RTLD_LAZY);
|
||||||
|
|
||||||
|
if (!udev_handle) {
|
||||||
|
/* libudev.so.1 changed the return types of the two unref functions
|
||||||
|
* from voids to pointers. We don't use those return values, and the
|
||||||
|
* only ABI I've heard that cares about this kind of change (calling
|
||||||
|
* a function with a void * return that actually only returns void)
|
||||||
|
* might be ia64.
|
||||||
|
*/
|
||||||
|
udev_handle = dlopen("libudev.so.0", RTLD_LOCAL | RTLD_LAZY);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return udev_handle;
|
return udev_handle;
|
||||||
|
|
Loading…
Reference in New Issue