Commit 03aa19762854bc4749fea52d7f2ba7d1077c036f
1 parent
e96e2044
Fix for execve syscall, by Kirill A. Shutemov.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3763 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
4 additions
and
4 deletions
linux-user/syscall.c
@@ -3187,18 +3187,18 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, | @@ -3187,18 +3187,18 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, | ||
3187 | argc = 0; | 3187 | argc = 0; |
3188 | guest_argp = arg2; | 3188 | guest_argp = arg2; |
3189 | for (gp = guest_argp; ; gp++) { | 3189 | for (gp = guest_argp; ; gp++) { |
3190 | - if (get_user_ual(guest_argp, gp)) | 3190 | + if (get_user_ual(addr, gp)) |
3191 | goto efault; | 3191 | goto efault; |
3192 | - if (!guest_argp) | 3192 | + if (!addr) |
3193 | break; | 3193 | break; |
3194 | argc++; | 3194 | argc++; |
3195 | } | 3195 | } |
3196 | envc = 0; | 3196 | envc = 0; |
3197 | guest_envp = arg3; | 3197 | guest_envp = arg3; |
3198 | for (gp = guest_envp; ; gp++) { | 3198 | for (gp = guest_envp; ; gp++) { |
3199 | - if (get_user_ual(guest_envp, gp)) | 3199 | + if (get_user_ual(addr, gp)) |
3200 | goto efault; | 3200 | goto efault; |
3201 | - if (!guest_envp) | 3201 | + if (!addr) |
3202 | break; | 3202 | break; |
3203 | envc++; | 3203 | envc++; |
3204 | } | 3204 | } |