Revision
23305
Author
zarzycki@apple.com
Date
2007-07-11 15:29:16 -0700 (Wed, 11 Jul 2007)

Log Message

<rdar://problem/5328364> Leopard9A491: After Installing 9A491 the system froze at restart in the installer.

Modified Paths

Diff

Modified: trunk/launchd/src/launchd_runtime.c (23304 => 23305)


--- trunk/launchd/src/launchd_runtime.c	2007-07-11 22:11:37 UTC (rev 23304)
+++ trunk/launchd/src/launchd_runtime.c	2007-07-11 22:29:16 UTC (rev 23305)
@@ -1195,6 +1195,7 @@
 runtime_log_uncork_pending_drain(void)
 {
 	mach_msg_type_number_t outvalCnt;
+	mach_port_t tmp_port;
 	vm_offset_t outval;
 
 	if (!drain_reply_port) {
@@ -1209,12 +1210,13 @@
 		return;
 	}
 
-	if (!launchd_assumes(job_mig_log_drain_reply(drain_reply_port, 0, outval, outvalCnt) == 0)) {
-		launchd_assumes(launchd_mport_deallocate(drain_reply_port) == KERN_SUCCESS);
+	tmp_port = drain_reply_port;
+	drain_reply_port = MACH_PORT_NULL;
+
+	if (!launchd_assumes(job_mig_log_drain_reply(tmp_port, 0, outval, outvalCnt) == 0)) {
+		launchd_assumes(launchd_mport_deallocate(tmp_port) == KERN_SUCCESS);
 	}
 
-	drain_reply_port = MACH_PORT_NULL;
-
 	mig_deallocate(outval, outvalCnt);
 }