diff options
Diffstat (limited to 'libdiskfs')
-rw-r--r-- | libdiskfs/node-nrele.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libdiskfs/node-nrele.c b/libdiskfs/node-nrele.c index ed418a19..73688356 100644 --- a/libdiskfs/node-nrele.c +++ b/libdiskfs/node-nrele.c @@ -47,6 +47,12 @@ diskfs_nrele (struct node *np) diskfs_lost_hardrefs (np); if (!np->dn_stat.st_nlink) { + if (np->sockaddr != MACH_PORT_NULL) + { + mach_port_deallocate (mach_task_self (), np->sockaddr); + np->sockaddr = MACH_PORT_NULL; + } + /* There are no links. If there are soft references that can be dropped, we can't let them postpone deallocation. So attempt to drop them. But that's a user-supplied |