Tue Dec 19 17:00:42 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951220
authorRoland McGrath <roland@gnu.org>
Wed, 20 Dec 1995 10:00:22 +0000 (10:00 +0000)
committerRoland McGrath <roland@gnu.org>
Wed, 20 Dec 1995 10:00:22 +0000 (10:00 +0000)
* hurd/hurdpid.c (_S_msg_proc_newids): Only run the hook when the
pgrp changes.

ChangeLog
hurd/hurdpid.c

index 480136a..6375ebb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Dec 19 17:00:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
+
+       * hurd/hurdpid.c (_S_msg_proc_newids): Only run the hook when the
+       pgrp changes.
+
 Mon Dec 18 13:40:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
 
        * stdio/fread.c: Don't increment __offset when it's -1.
index 23594d9..fa52f19 100644 (file)
@@ -49,23 +49,24 @@ _S_msg_proc_newids (mach_port_t me,
                    task_t task,
                    pid_t ppid, pid_t pgrp, int orphaned)
 {
+  int pgrp_changed;
+
   if (task != __mach_task_self ())
     return EPERM;
 
   __mach_port_deallocate (__mach_task_self (), task);
 
+  pgrp_changed = pgrp != _hurd_pgrp;
   _hurd_ppid = ppid;
   _hurd_pgrp = pgrp;
   _hurd_orphaned = orphaned;
 
-  /* Run things that want notification of a pgrp change.  */
-  RUN_HOOK (_hurd_pgrp_changed_hook, (_hurd_pgrp));
+  if (pgrp_changed)
+    /* Run things that want notification of a pgrp change.  */
+    RUN_HOOK (_hurd_pgrp_changed_hook, (pgrp));
 
   /* Notify any waiting user threads that the id change as been completed.  */
   ++_hurd_pids_changed_stamp;
-#ifdef noteven
-  __condition_broadcast (&_hurd_pids_changed_sync);
-#endif
 
   return 0;
 }