diff options
author | ths <ths@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-12-02 06:28:08 +0000 |
---|---|---|
committer | ths <ths@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-12-02 06:28:08 +0000 |
commit | 03aa19762854bc4749fea52d7f2ba7d1077c036f (patch) | |
tree | 15aece97b2eb4aed942ff299d8ba1b322e93e89e /linux-user | |
parent | e96e2044a14340bf1e612b7f046093495c10a06f (diff) |
Fix for execve syscall, by Kirill A. Shutemov.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3763 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'linux-user')
-rw-r--r-- | linux-user/syscall.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 6f2872fffb..bf7b31bebe 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -3187,18 +3187,18 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, argc = 0; guest_argp = arg2; for (gp = guest_argp; ; gp++) { - if (get_user_ual(guest_argp, gp)) + if (get_user_ual(addr, gp)) goto efault; - if (!guest_argp) + if (!addr) break; argc++; } envc = 0; guest_envp = arg3; for (gp = guest_envp; ; gp++) { - if (get_user_ual(guest_envp, gp)) + if (get_user_ual(addr, gp)) goto efault; - if (!guest_envp) + if (!addr) break; envc++; } |