Ver Fonte

make dynamic linker relocate the main program image last, after all libs

prior to this change, copy relocations for initialized pointer
variables would not reflect the relocated contents of the pointer.
Rich Felker há 14 anos atrás
pai
commit
c7debe13ee
1 ficheiros alterados com 1 adições e 0 exclusões
  1. 1 0
      src/ldso/dynlink.c

+ 1 - 0
src/ldso/dynlink.c

@@ -462,6 +462,7 @@ void *__dynlink(int argc, char **argv, size_t *got)
 	load_deps(head);
 
 	make_global(head);
+	reloc_all(head->next);
 	reloc_all(head);
 
 	if (rtld_used) {