server: Simplify tkill() and remove unreachable code (Smatch).

Michael Stefaniuc mstefani at redhat.de
Mon Jul 26 18:01:01 CDT 2010


---
 server/ptrace.c |    9 ++++-----
 1 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/server/ptrace.c b/server/ptrace.c
index 48b30b4..cc08d32 100644
--- a/server/ptrace.c
+++ b/server/ptrace.c
@@ -213,18 +213,17 @@ static int wait4_thread( struct thread *thread, int signal )
 static inline int tkill( int tgid, int pid, int sig )
 {
 #ifdef __linux__
-    int ret = -ENOSYS;
 # ifdef __i386__
-    ret = syscall(270 /*SYS_tgkill*/, tgid, pid, sig);
+    int ret = syscall(270 /*SYS_tgkill*/, tgid, pid, sig);
     if (ret < 0 && errno == -ENOSYS)
         ret = syscall(238 /*SYS_tkill*/, pid, sig);
     return ret;
 # elif defined(__x86_64__)
     return syscall(200 /*SYS_tkill*/, pid, sig);
-# endif
-    if (ret >= 0) return ret;
-    errno = -ret;
+# else
+    errno = ENOSYS;
     return -1;
+# endif
 #elif defined(__FreeBSD__) && defined(HAVE_THR_KILL2)
     return thr_kill2( tgid, pid, sig );
 #else
-- 
1.7.2



More information about the wine-patches mailing list