summaryrefslogtreecommitdiff
path: root/libports/reallocate-from-external.c
diff options
context:
space:
mode:
Diffstat (limited to 'libports/reallocate-from-external.c')
-rw-r--r--libports/reallocate-from-external.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libports/reallocate-from-external.c b/libports/reallocate-from-external.c
index 7205bd9b..d0fae1a9 100644
--- a/libports/reallocate-from-external.c
+++ b/libports/reallocate-from-external.c
@@ -71,6 +71,10 @@ ports_reallocate_from_external (void *portstruct, mach_port_t receive)
pthread_mutex_unlock (&_ports_lock);
assert_perror (err);
+ /* This is an optimization. It may fail. */
+ mach_port_set_protected_payload (mach_task_self (), pi->port_right,
+ (unsigned long) pi);
+
mach_port_move_member (mach_task_self (), receive, pi->bucket->portset);
if (stat.mps_srights)