[launchd-changes] [23116] trunk/launchd/src

source_changes at macosforge.org source_changes at macosforge.org
Tue Feb 27 12:39:13 PST 2007


Revision: 23116
          http://trac.macosforge.org/projects/launchd/changeset/23116
Author:   zarzycki at apple.com
Date:     2007-02-27 12:39:13 -0800 (Tue, 27 Feb 2007)

Log Message:
-----------
<rdar://problem/5023447> Leopard9A377: /SourceCache/xnu/xnu-1051/bsd/kern/kern_exit.c:247 "init died\nState at Last Exc

Modified Paths:
--------------
    trunk/launchd/src/launchd_core_logic.c
    trunk/launchd/src/launchd_unix_ipc.c
    trunk/launchd/src/launchd_unix_ipc.h

Modified: trunk/launchd/src/launchd_core_logic.c
===================================================================
--- trunk/launchd/src/launchd_core_logic.c	2007-02-27 20:28:31 UTC (rev 23115)
+++ trunk/launchd/src/launchd_core_logic.c	2007-02-27 20:39:13 UTC (rev 23116)
@@ -633,6 +633,8 @@
 		return;
 	}
 
+	ipc_close_all_with_job(j);
+
 	if (j->forced_peers_to_demand_mode) {
 		job_set_global_on_demand(j, false);
 	}

Modified: trunk/launchd/src/launchd_unix_ipc.c
===================================================================
--- trunk/launchd/src/launchd_unix_ipc.c	2007-02-27 20:28:31 UTC (rev 23115)
+++ trunk/launchd/src/launchd_unix_ipc.c	2007-02-27 20:39:13 UTC (rev 23116)
@@ -238,6 +238,18 @@
 }
 
 void
+ipc_close_all_with_job(job_t j)
+{
+	struct conncb *ci, *cin;
+
+	SLIST_FOREACH_SAFE(ci, &connections, sle, cin) {
+		if (ci->j == j) {
+			ipc_close(ci);
+		}
+	}
+}
+
+void
 ipc_close_fds(launch_data_t o)
 {
 	size_t i;

Modified: trunk/launchd/src/launchd_unix_ipc.h
===================================================================
--- trunk/launchd/src/launchd_unix_ipc.h	2007-02-27 20:28:31 UTC (rev 23115)
+++ trunk/launchd/src/launchd_unix_ipc.h	2007-02-27 20:39:13 UTC (rev 23116)
@@ -37,6 +37,7 @@
 extern char *sockpath;
 
 void ipc_open(int fd, job_t j);
+void ipc_close_all_with_job(job_t j);
 void ipc_close(struct conncb *c);
 void ipc_callback(void *, struct kevent *);
 void ipc_readmsg(launch_data_t msg, void *context);

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/launchd-changes/attachments/20070227/4c24270d/attachment.html


More information about the launchd-changes mailing list