]> granicus.if.org Git - strace/commitdiff
2004-03-01 Roland McGrath <roland@redhat.com>
authorRoland McGrath <roland@redhat.com>
Mon, 1 Mar 2004 22:03:58 +0000 (22:03 +0000)
committerRoland McGrath <roland@redhat.com>
Mon, 1 Mar 2004 22:03:58 +0000 (22:03 +0000)
* process.c (sys_execve): Clear instead of set TCB_WAITEXECVE on
erring syscall.

process.c

index 464ef27a331e94331eaa269635ea44166c5e4205..6d503afaaba4b007545c91a58e0a0dabc2f460b7 100644 (file)
--- a/process.c
+++ b/process.c
@@ -1704,7 +1704,10 @@ struct tcb *tcp;
                }
        }
 #if defined LINUX && defined TCB_WAITEXECVE
-       tcp->flags |= TCB_WAITEXECVE;
+       if (exiting(tcp) && syserror(tcp))
+               tcp->flags &= ~TCB_WAITEXECVE;
+       else
+               tcp->flags |= TCB_WAITEXECVE;
 #endif /* LINUX && TCB_WAITEXECVE */
        return 0;
 }