diff options
Diffstat (limited to 'ipc')
-rw-r--r-- | ipc/ipc_port.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/ipc/ipc_port.c b/ipc/ipc_port.c index 86a4ee2..a608e6e 100644 --- a/ipc/ipc_port.c +++ b/ipc/ipc_port.c @@ -310,6 +310,7 @@ ipc_port_nsrequest( { ipc_port_t previous; mach_port_mscount_t mscount; + mach_port_mscount_t mscount_max = (mach_port_mscount_t) ~0; assert(ip_active(port)); @@ -317,7 +318,8 @@ ipc_port_nsrequest( mscount = port->ip_mscount; if ((port->ip_srights == 0) && - (sync <= mscount) && + (sync <= mscount + || (sync == mscount_max && mscount < mscount_max)) && (notify != IP_NULL)) { port->ip_nsrequest = IP_NULL; ip_unlock(port); |