diff options
Diffstat (limited to 'proc')
-rw-r--r-- | proc/ChangeLog | 5 | ||||
-rw-r--r-- | proc/notify.c | 9 |
2 files changed, 12 insertions, 2 deletions
diff --git a/proc/ChangeLog b/proc/ChangeLog index b2557054..4bb36d93 100644 --- a/proc/ChangeLog +++ b/proc/ChangeLog @@ -1,3 +1,8 @@ +1999-03-06 Mark Kettenis <kettenis@gnu.org> + + * notify.c (do_mach_notify_dead_name): Deallocate reference to + DEADPORT. + Sat Feb 20 06:26:17 1999 Thomas Bushnell, BSG <tb@mit.edu> * stubs.c (send_signal): Typo in comment. diff --git a/proc/notify.c b/proc/notify.c index 9d48d945..7ab8d56b 100644 --- a/proc/notify.c +++ b/proc/notify.c @@ -1,5 +1,5 @@ /* Handle notifications - Copyright (C) 1992, 1993, 1994, 1996 Free Software Foundation, Inc. + Copyright (C) 1992, 1993, 1994, 1996, 1999 Free Software Foundation, Inc. This file is part of the GNU Hurd. @@ -41,6 +41,9 @@ do_mach_notify_dead_name (mach_port_t notify, { struct proc *p; + /* Drop gratuitous extra reference that the notification creates. */ + mach_port_deallocate (mach_task_self (), deadport); + if (notify == generic_port) { check_dead_execdata_notify (deadport); @@ -50,7 +53,9 @@ do_mach_notify_dead_name (mach_port_t notify, p = ports_lookup_port (proc_bucket, notify, proc_class); if (!p) - return EOPNOTSUPP; + { + return EOPNOTSUPP; + } if (p->p_msgport == deadport) { |