From: Roland McGrath Date: Thu, 1 Nov 2007 21:42:18 +0000 (+0000) Subject: 2007-11-01 Roland McGrath X-Git-Tag: v4.5.18~122 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9bc6340d21cb20d2c775863598068c1a29460eba;p=strace 2007-11-01 Roland McGrath * syscall.c (get_scno) [ARM]: Check TCB_WAITEXECVE. Reported by Bernhard Fischer . --- diff --git a/syscall.c b/syscall.c index 1ee6ce19..ba176458 100644 --- a/syscall.c +++ b/syscall.c @@ -1046,6 +1046,14 @@ struct tcb *tcp; * We only need to grab the syscall number on syscall entry. */ if (regs.ARM_ip == 0) { + if (!(tcp->flags & TCB_INSYSCALL)) { + /* Check if we return from execve. */ + if (tcp->flags & TCB_WAITEXECVE) { + tcp->flags &= ~TCB_WAITEXECVE; + return 0; + } + } + /* * Note: we only deal with only 32-bit CPUs here. */