diff options
author | Mike Frysinger <vapier@gentoo.org> | 2005-07-11 22:13:30 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2005-07-11 22:13:30 +0000 |
commit | bda3391b23de16b367d4d581c39f86cdbd37fc2b (patch) | |
tree | 23cc73cdc92a0b5e7e9cad8ed5b7b1b1f5c9a5f3 | |
parent | f4d9a266b9434e6857083a5bce58770547bc9876 (diff) |
base __rtld_stack_end off of argv instead of args so we dont have to worry about how each arch treats args
-rw-r--r-- | ldso/ldso/dl-startup.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/ldso/ldso/dl-startup.c b/ldso/ldso/dl-startup.c index f1ad3e4a5..2e0e8bcb7 100644 --- a/ldso/ldso/dl-startup.c +++ b/ldso/ldso/dl-startup.c @@ -297,13 +297,8 @@ static void * __attribute_used__ _dl_start(unsigned long args) fixed up by now. Still no function calls outside of this library , since the dynamic resolver is not yet ready. */ - __rtld_stack_end = (void *)args; /* Needs to be after ld.so self relocation */ - if (*((long *)__rtld_stack_end) != argc) { - SEND_STDERR_DEBUG("__rtld_stack_end="); - SEND_ADDRESS_STDERR_DEBUG(__rtld_stack_end, 0); - SEND_STDERR_DEBUG(" doesn't point to argc="); - SEND_ADDRESS_STDERR_DEBUG(&argc, 1); - } + __rtld_stack_end = (void *)(argv - 1); + _dl_get_ready_to_run(tpnt, load_addr, auxvt, envp, argv); |