Inline two single-use templates.
Change-Id: Ie1b22479128f9a4b8ece08a433ee5943a1d04c11
diff --git a/linker/linker_main.cpp b/linker/linker_main.cpp
index f65f82d..40f6b9a 100644
--- a/linker/linker_main.cpp
+++ b/linker/linker_main.cpp
@@ -435,9 +435,12 @@
++ld_preloads_count;
}
- for_each_dt_needed(si, [&](const char* name) {
- needed_library_name_list.push_back(name);
- });
+ for (const ElfW(Dyn)* d = si->dynamic; d->d_tag != DT_NULL; ++d) {
+ if (d->d_tag == DT_NEEDED) {
+ const char* name = fix_dt_needed(si->get_string(d->d_un.d_val), si->get_realpath());
+ needed_library_name_list.push_back(name);
+ }
+ }
const char** needed_library_names = &needed_library_name_list[0];
size_t needed_libraries_count = needed_library_name_list.size();