qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 1/2] linux-user/signal.c: Correct error path for AAr


From: Peter Maydell
Subject: [Qemu-devel] [PATCH 1/2] linux-user/signal.c: Correct error path for AArch64 do_rt_sigreturn
Date: Wed, 12 Mar 2014 13:06:00 +0000

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: Peter Maydell <address@hidden>
---
 linux-user/signal.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/linux-user/signal.c b/linux-user/signal.c
index c8a1da0..8c4a32d 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -1334,7 +1334,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) {
-- 
1.9.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]