2015-07-18 10:57:32 +01:00
|
|
|
diff --git a/loader.c b/loader.c
|
|
|
|
index 4fdf3c2..69ea22d 100644
|
2014-06-10 11:42:48 +01:00
|
|
|
--- a/src/loader/loader.c
|
|
|
|
+++ b/src/loader/loader.c
|
2015-07-18 10:57:32 +01:00
|
|
|
@@ -112,7 +112,7 @@ static void *udev_handle = NULL;
|
2015-07-18 02:33:19 +01:00
|
|
|
static void *
|
2014-06-10 11:42:48 +01:00
|
|
|
udev_dlopen_handle(void)
|
|
|
|
{
|
2015-07-18 02:33:19 +01:00
|
|
|
- char name[80];
|
2015-07-18 10:57:32 +01:00
|
|
|
+ char name[256];
|
2015-07-18 02:33:19 +01:00
|
|
|
unsigned flags = RTLD_NOLOAD | RTLD_LOCAL | RTLD_LAZY;
|
|
|
|
int version;
|
2014-06-10 11:42:48 +01:00
|
|
|
|
2015-07-18 10:57:32 +01:00
|
|
|
@@ -126,7 +126,7 @@ udev_dlopen_handle(void)
|
2015-07-18 02:33:19 +01:00
|
|
|
/* First try opening an already linked libudev, then try loading one */
|
|
|
|
do {
|
2015-07-18 10:57:32 +01:00
|
|
|
for (version = 1; version >= 0; version--) {
|
2015-07-18 02:33:19 +01:00
|
|
|
- snprintf(name, sizeof(name), "libudev.so.%d", version);
|
2015-07-18 10:57:32 +01:00
|
|
|
+ snprintf(name, sizeof(name), "@udev@/lib/libudev.so.%d", version);
|
|
|
|
udev_handle = dlopen(name, flags);
|
|
|
|
if (udev_handle)
|
|
|
|
return udev_handle;
|