linux-user: Tidy TARGET_NR_rt_sigaction
Initialize variables instead of elses. Use an else instead of a goto. Add braces. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <20210422230227.314751-8-richard.henderson@linaro.org> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
parent
02d0de101c
commit
fb80439b1e
|
@ -9060,32 +9060,26 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1,
|
||||||
target_ulong sigsetsize = arg4;
|
target_ulong sigsetsize = arg4;
|
||||||
target_ulong restorer = 0;
|
target_ulong restorer = 0;
|
||||||
#endif
|
#endif
|
||||||
struct target_sigaction *act;
|
struct target_sigaction *act = NULL;
|
||||||
struct target_sigaction *oact;
|
struct target_sigaction *oact = NULL;
|
||||||
|
|
||||||
if (sigsetsize != sizeof(target_sigset_t)) {
|
if (sigsetsize != sizeof(target_sigset_t)) {
|
||||||
return -TARGET_EINVAL;
|
return -TARGET_EINVAL;
|
||||||
}
|
}
|
||||||
if (arg2) {
|
if (arg2 && !lock_user_struct(VERIFY_READ, act, arg2, 1)) {
|
||||||
if (!lock_user_struct(VERIFY_READ, act, arg2, 1)) {
|
return -TARGET_EFAULT;
|
||||||
return -TARGET_EFAULT;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
act = NULL;
|
|
||||||
}
|
}
|
||||||
if (arg3) {
|
if (arg3 && !lock_user_struct(VERIFY_WRITE, oact, arg3, 0)) {
|
||||||
if (!lock_user_struct(VERIFY_WRITE, oact, arg3, 0)) {
|
ret = -TARGET_EFAULT;
|
||||||
ret = -TARGET_EFAULT;
|
} else {
|
||||||
goto rt_sigaction_fail;
|
ret = get_errno(do_sigaction(arg1, act, oact, restorer));
|
||||||
|
if (oact) {
|
||||||
|
unlock_user_struct(oact, arg3, 1);
|
||||||
}
|
}
|
||||||
} else
|
}
|
||||||
oact = NULL;
|
if (act) {
|
||||||
ret = get_errno(do_sigaction(arg1, act, oact, restorer));
|
|
||||||
rt_sigaction_fail:
|
|
||||||
if (act)
|
|
||||||
unlock_user_struct(act, arg2, 0);
|
unlock_user_struct(act, arg2, 0);
|
||||||
if (oact)
|
}
|
||||||
unlock_user_struct(oact, arg3, 1);
|
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
#ifdef TARGET_NR_sgetmask /* not on alpha */
|
#ifdef TARGET_NR_sgetmask /* not on alpha */
|
||||||
|
|
Loading…
Reference in New Issue