Merge "linker: Fix LD_PRELOADS for calling constructors"
diff --git a/linker/linker.c b/linker/linker.c
index 753ee89..b96e072 100644
--- a/linker/linker.c
+++ b/linker/linker.c
@@ -1649,6 +1649,7 @@
unsigned *vecs = (unsigned*) (argv + argc + 1);
unsigned *v;
soinfo *si;
+ int i;
struct link_map * map;
const char *ldpath_env = NULL;
const char *ldpreload_env = NULL;
@@ -1791,6 +1792,10 @@
exit(-1);
}
+ for(i = 0; preloads[i] != NULL; i++) {
+ soinfo_call_constructors(preloads[i]);
+ }
+
soinfo_call_constructors(si);
#if ALLOW_SYMBOLS_FROM_MAIN