[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#12319: libltdl does not skip bad libs
From: |
Pierre Ossman |
Subject: |
bug#12319: libltdl does not skip bad libs |
Date: |
Fri, 31 Aug 2012 13:30:46 +0200 |
I've unfortunately stumbled upon a key difference in behaviour between
dlopen() and lt_dlopen(). When dlopen() encounters a bad library (e.g.
wrong arch), it will just continue on and find another library.
lt_dlopen() however, will stop on the first library which it can read.
This breaks libltdl applications horribly in multi-arch environments.
As LD_LIBRARY_PATH is not arch specific, having a universal one means
having one like:
LD_LIBRARY_PATH=/usr/foo/lib32:/usr/foo/lib64
This works fine with dlopen(), but not with lt_dlopen().
The fix seems simple enough. In find_handle_callback(), change:
*phandle = 0;
to:
return 0;
Rgds
--
Pierre Ossman OpenSource-based Thin Client Technology
System Developer Telephone: +46-13-21 46 00
Cendio AB Web: http://www.cendio.com
signature.asc
Description: PGP signature
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- bug#12319: libltdl does not skip bad libs,
Pierre Ossman <=