From: Jeff Law Date: Fri, 21 Jul 1995 23:52:45 +0000 (+0000) Subject: * lynx-nat.c (child_thread_alive): New function. Somehow I X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f8c90568d5ffbdf706241e32f3625e6aa69eec13;p=binutils-gdb.git * lynx-nat.c (child_thread_alive): New function. Somehow I forgot to check this in with all the other thread_alive changes. --- diff --git a/gdb/lynx-nat.c b/gdb/lynx-nat.c index 883496ed7b4..4b2d288eee9 100644 --- a/gdb/lynx-nat.c +++ b/gdb/lynx-nat.c @@ -696,6 +696,23 @@ child_wait (pid, ourstatus) } } +/* Return nonzero if the given thread is still alive. */ +int +child_thread_alive (pid) + int pid; +{ + /* Arggh. Apparently pthread_kill only works for threads within + the process that calls pthread_kill. + + We want to avoid the lynx signal extensions as they simply don't + map well to the generic gdb interface we want to keep. + + All we want to do is determine if a particular thread is alive; + it appears as if we can just make a harmless thread specific + ptrace call to do that. */ + return (ptrace (PTRACE_THREADUSER, pid, 0, 0) != -1); +} + /* Resume execution of the inferior process. If STEP is nonzero, single-step it. If SIGNAL is nonzero, give it that signal. */