Revert "Improve library lookup logic"
This reverts commit ea4ef52fa46602a5853df0e5b1ddd71b194d54ce.
Bug: http://b/21876587
Bug: http://b/21153477
Bug: http://b/21171302
Bug: https://code.google.com/p/android/issues/detail?id=160921
Change-Id: I23ddbd69294023c56c9cbabad29d26c8f736ab43
diff --git a/linker/linker.cpp b/linker/linker.cpp
index 9c8765d..bbdd1b0 100644
--- a/linker/linker.cpp
+++ b/linker/linker.cpp
@@ -1349,19 +1349,7 @@
return nullptr;
}
- uint32_t target_sdk_version = get_application_target_sdk_version();
-
for (soinfo* si = solist; si != nullptr; si = si->next) {
- // If the library was opened under different target sdk version
- // skip this step and try to reopen it. The exceptions are
- // "libdl.so" and global group. There is no point in skipping
- // them because relocation process is going to use them
- // in any case.
- if (si != solist && (si->get_dt_flags_1() & DF_1_GLOBAL) == 0 &&
- si->is_linked() && si->get_target_sdk_version() != target_sdk_version) {
- continue;
- }
-
const char* soname = si->get_soname();
if (soname != nullptr && (strcmp(name, soname) == 0)) {
return si;
diff --git a/linker/linker_sdk_versions.cpp b/linker/linker_sdk_versions.cpp
index 9aebb06..e9ad3dc 100644
--- a/linker/linker_sdk_versions.cpp
+++ b/linker/linker_sdk_versions.cpp
@@ -21,10 +21,6 @@
static std::atomic<uint32_t> g_target_sdk_version(__ANDROID_API__);
void set_application_target_sdk_version(uint32_t target) {
- // translate current sdk_version to platform sdk_version
- if (target == 0) {
- target = __ANDROID_API__;
- }
g_target_sdk_version = target;
}