Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
halo
rockchip_bionic
Commits
c191a8ad
Commit
c191a8ad
authored
10 years ago
by
Dmitriy Ivanov
Committed by
Android (Google) Code Review
10 years ago
1
Browse files
Options
Download
Plain Diff
Merge "Look into ld_preloads before current library" into lmp-dev
parents
b2eb09a9
05e190c0
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
27 additions
and
9 deletions
+27
-9
linker/linker.cpp
linker/linker.cpp
+27
-9
No files found.
linker/linker.cpp
View file @
c191a8ad
...
...
@@ -495,6 +495,15 @@ static ElfW(Sym)* soinfo_do_lookup(soinfo* si, const char* name, soinfo** lsi, s
*
lsi
=
si
;
goto
done
;
}
/* Next, look for it in the preloads list */
for
(
int
i
=
0
;
g_ld_preloads
[
i
]
!=
NULL
;
i
++
)
{
s
=
soinfo_elf_lookup
(
g_ld_preloads
[
i
],
elf_hash
,
name
);
if
(
s
!=
NULL
)
{
*
lsi
=
g_ld_preloads
[
i
];
goto
done
;
}
}
}
else
{
/* Order of symbol lookup is controlled by DT_SYMBOLIC flag */
...
...
@@ -512,6 +521,15 @@ static ElfW(Sym)* soinfo_do_lookup(soinfo* si, const char* name, soinfo** lsi, s
*
lsi
=
somain
;
goto
done
;
}
/* Next, look for it in the preloads list */
for
(
int
i
=
0
;
g_ld_preloads
[
i
]
!=
NULL
;
i
++
)
{
s
=
soinfo_elf_lookup
(
g_ld_preloads
[
i
],
elf_hash
,
name
);
if
(
s
!=
NULL
)
{
*
lsi
=
g_ld_preloads
[
i
];
goto
done
;
}
}
}
/* Look for symbols in the local scope (the object who is
...
...
@@ -543,16 +561,16 @@ static ElfW(Sym)* soinfo_do_lookup(soinfo* si, const char* name, soinfo** lsi, s
*
lsi
=
somain
;
goto
done
;
}
}
}
}
/* Next, look for it in the preloads list */
for
(
int
i
=
0
;
g_ld_preloads
[
i
]
!=
NULL
;
i
++
)
{
s
=
soinfo_elf_lookup
(
g_ld_preloads
[
i
],
elf_hash
,
name
);
if
(
s
!=
NULL
)
{
*
lsi
=
g_ld_preloads
[
i
];
goto
done
;
/* Next, look for it in the preloads list */
for
(
int
i
=
0
;
g_ld_preloads
[
i
]
!=
NULL
;
i
++
)
{
s
=
soinfo_elf_lookup
(
g_ld_preloads
[
i
],
elf_hash
,
name
);
if
(
s
!=
NULL
)
{
*
lsi
=
g_ld_preloads
[
i
];
goto
done
;
}
}
}
}
}
...
...
This diff is collapsed.
Click to expand it.
Mark Stevens
@mstevens
mentioned in commit
8c673ec8
·
8 years ago
mentioned in commit
8c673ec8
mentioned in commit 8c673ec8e900f48c354b07c9bcd8a9973ac73784
Toggle commit list
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment