diff options
-rw-r--r-- | linker/linker.cpp | 7 | ||||
-rw-r--r-- | tests/libs/Android.bp | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/linker/linker.cpp b/linker/linker.cpp index fab64bc1c..b2e8dbc11 100644 --- a/linker/linker.cpp +++ b/linker/linker.cpp @@ -3215,9 +3215,14 @@ void init_default_namespace() { g_default_ld_paths = kDefaultLdPaths; } + char real_path[PATH_MAX]; std::vector<std::string> ld_default_paths; for (size_t i = 0; g_default_ld_paths[i] != nullptr; ++i) { - ld_default_paths.push_back(g_default_ld_paths[i]); + if (realpath(g_default_ld_paths[i], real_path) != nullptr) { + ld_default_paths.push_back(real_path); + } else { + ld_default_paths.push_back(g_default_ld_paths[i]); + } } g_default_namespace.set_default_library_paths(std::move(ld_default_paths)); diff --git a/tests/libs/Android.bp b/tests/libs/Android.bp index 82836336d..e1a423921 100644 --- a/tests/libs/Android.bp +++ b/tests/libs/Android.bp @@ -18,7 +18,7 @@ cc_defaults { name: "bionic_testlib_defaults", host_supported: true, ldflags: [ - "-Wl,--rpath,\\$${ORIGIN}", + "-Wl,--rpath,${ORIGIN}", "-Wl,--enable-new-dtags", ], relative_install_path: "bionic-loader-test-libs", |