]> git.eshelyaron.com Git - emacs.git/commitdiff
* src/sysdep.c (deliver_process_signal): Improve comment.
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 30 Dec 2016 17:45:46 +0000 (09:45 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 30 Dec 2016 17:46:59 +0000 (09:46 -0800)
src/sysdep.c

index 86d420f66c4250e0ddde4f389e8cc4d567a90d68..1ba336e387a121a57586defe652ede6fd90c5d02 100644 (file)
@@ -1616,14 +1616,17 @@ static pthread_t main_thread;
 #endif
 
 /* SIG has arrived at the current process.  Deliver it to the main
-   thread, which should handle it with HANDLER.
+   thread, which should handle it with HANDLER.  (Delivering the
+   signal to some other thread might not work if the other thread is
+   about to exit.)
 
    If we are on the main thread, handle the signal SIG with HANDLER.
    Otherwise, redirect the signal to the main thread, blocking it from
    this thread.  POSIX says any thread can receive a signal that is
    associated with a process, process group, or asynchronous event.
-   On GNU/Linux that is not true, but for other systems (FreeBSD at
-   least) it is.  */
+   On GNU/Linux the main thread typically gets a process signal unless
+   it's blocked, but other systems (FreeBSD at least) can deliver the
+   signal to other threads.  */
 void
 deliver_process_signal (int sig, signal_handler_t handler)
 {