* Add missing unlock of user struct. * Remove unneeded pointer variable. Signed-off-by: Erik de Castro Lopo <er...@mega-nerd.com> --- linux-user/syscall.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index a50229d..7d8f54a 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -9412,7 +9412,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, { /* args: clockid_t clockid, struct sigevent *sevp, timer_t *timerid */ - struct sigevent host_sevp = { {0}, }, *phost_sevp = NULL; + struct sigevent host_sevp = { {0}, }; struct target_sigevent *ptarget_sevp; struct target_timer_t *ptarget_timer; @@ -9432,10 +9432,10 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, host_sevp.sigev_signo = tswap32(ptarget_sevp->sigev_signo); host_sevp.sigev_notify = tswap32(ptarget_sevp->sigev_notify); - phost_sevp = &host_sevp; + unlock_user_struct(ptarget_sevp, arg2, 0); } - ret = get_errno(timer_create(clkid, phost_sevp, phtimer)); + ret = get_errno(timer_create(clkid, &host_sevp, phtimer)); if (ret) { phtimer = NULL; } else { -- 2.0.1