Fix RTLD_NEXT lookup for the local_group
Linker used to skip RTLD_NEXT within local_group when caller->next is nullptr (which represents load order but not the order within local_group dependency tree) Bug: http://b/21380474 Change-Id: I178fc4657b19bceb871635b177c1df67855b1708 (cherry picked from commit b96ac41b32e61799c48f3fd07831cc168b95068d)
This commit is contained in:
parent
c15a935202
commit
15309fde91
@ -980,7 +980,7 @@ const ElfW(Sym)* dlsym_linear_lookup(const char* name,
|
|||||||
soinfo* start = solist;
|
soinfo* start = solist;
|
||||||
|
|
||||||
if (handle == RTLD_NEXT) {
|
if (handle == RTLD_NEXT) {
|
||||||
if (caller == nullptr || caller->next == nullptr) {
|
if (caller == nullptr) {
|
||||||
return nullptr;
|
return nullptr;
|
||||||
} else {
|
} else {
|
||||||
start = caller->next;
|
start = caller->next;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user