Commit 7f72cd23 authored by Peter Maydell's avatar Peter Maydell Committed by Riku Voipio
Browse files

linux-user/signal.c: Correct error path for AArch64 do_rt_sigreturn



The error path in AArch64 do_rt_sigreturn() which fails before
attempting lock_user_struct() was doing an unlock_user_struct()
on an uninitialized variable. Initialize frame to NULL so we
can use the same error-exit path in all cases (unlock of NULL
is permitted and does nothing).

Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
Signed-off-by: default avatarRiku Voipio <riku.voipio@linaro.org>
parent 6fffa262
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1340,7 +1340,7 @@ static void setup_frame(int sig, struct target_sigaction *ka,

long do_rt_sigreturn(CPUARMState *env)
{
    struct target_rt_sigframe *frame;
    struct target_rt_sigframe *frame = NULL;
    abi_ulong frame_addr = env->xregs[31];

    if (frame_addr & 15) {