diff options
author | ths <ths@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-12-09 23:12:55 +0000 |
---|---|---|
committer | ths <ths@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-12-09 23:12:55 +0000 |
commit | 982f3ab679dd60e2b7cc4c0038f72b59376171dc (patch) | |
tree | 0cc5df2ddda0c7223d9bc525112e5c0713ea81ce | |
parent | d1781191a557d2334bba9d8ef2207b80714fab6f (diff) |
Fix execve argc/envc counting, by Takashi Yoshii.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3788 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r-- | linux-user/syscall.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 590c72fa4a..0deb041eda 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -3190,7 +3190,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, argc = 0; guest_argp = arg2; - for (gp = guest_argp; ; gp++) { + for (gp = guest_argp; ; gp += sizeof(abi_ulong)) { if (get_user_ual(addr, gp)) goto efault; if (!addr) @@ -3199,7 +3199,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, } envc = 0; guest_envp = arg3; - for (gp = guest_envp; ; gp++) { + for (gp = guest_envp; ; gp += sizeof(abi_ulong)) { if (get_user_ual(addr, gp)) goto efault; if (!addr) |