Correctly handle the case of empty LD_PRELOAD entries
Previous android versions ignored empty entries for LD_PRELOAD
Bug: http://b/28936779
Change-Id: I757478fe0c604ee378186511cb13b757fd9a9864
(cherry picked from commit d799b2bb7e9335786ab4596757d871e4a7722ff0)
diff --git a/linker/linker.cpp b/linker/linker.cpp
index 9836210..39aa2ca 100644
--- a/linker/linker.cpp
+++ b/linker/linker.cpp
@@ -543,6 +543,9 @@
if (path != nullptr) {
// We have historically supported ':' as well as ' ' in LD_PRELOAD.
g_ld_preload_names = android::base::Split(path, " :");
+ std::remove_if(g_ld_preload_names.begin(),
+ g_ld_preload_names.end(),
+ [] (const std::string& s) { return s.empty(); });
}
}