diff options
author | Rich Felker <dalias@aerifal.cx> | 2012-07-11 01:41:20 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2012-07-11 01:41:20 -0400 |
commit | 0420b874465db7544a9e1f320969b4920c9405d8 (patch) | |
tree | a6685f74c0ae8dd478a300533c3054516d7f121a /dist | |
parent | bd1cf09c375e56c7fba6b7a1036b33b9591b5dba (diff) | |
download | musl-0420b874465db7544a9e1f320969b4920c9405d8.tar.gz musl-0420b874465db7544a9e1f320969b4920c9405d8.tar.xz musl-0420b874465db7544a9e1f320969b4920c9405d8.zip |
fix lots of breakage on dlopen, mostly with explicit pathnames
most importantly, the name for such libs was being set from an uninitialized buffer. also, shortname always had an initial '/' character, making it useless for looking up already-loaded libraries by name, and thus causing repeated searches through the library path. major changes now: - shortname is the base name for library lookups with no explicit pathname. it's initially clear for libraries loaded with an explicit pathname (and for the main program), but will be set if the same library (detected via inodes match) is later found by a search. - exact name match is never used to identify libraries loaded with an explicit pathname. in this case, there's no explicit search, so we can just stat the file and check for inode match.
Diffstat (limited to 'dist')
0 files changed, 0 insertions, 0 deletions