[launchd-changes] [23239] trunk/launchd/src/launchd_core_logic.c
source_changes at macosforge.org
source_changes at macosforge.org
Fri Apr 27 10:11:50 PDT 2007
Revision: 23239
http://trac.macosforge.org/projects/launchd/changeset/23239
Author: zarzycki at apple.com
Date: 2007-04-27 10:11:50 -0700 (Fri, 27 Apr 2007)
Log Message:
-----------
More clean up and sanity checking.
Modified Paths:
--------------
trunk/launchd/src/launchd_core_logic.c
Modified: trunk/launchd/src/launchd_core_logic.c
===================================================================
--- trunk/launchd/src/launchd_core_logic.c 2007-04-27 16:52:28 UTC (rev 23238)
+++ trunk/launchd/src/launchd_core_logic.c 2007-04-27 17:11:50 UTC (rev 23239)
@@ -5206,35 +5206,29 @@
j = j2;
jobmgr_log(j->mgr, LOG_DEBUG, "Renaming to: %s", session_type);
strcpy(j->mgr->name, session_type);
- job_assumes(j, launchd_mport_deallocate(target_subset) == KERN_SUCCESS);
bootstrapper = job_new(j->mgr, thelabel, NULL, bootstrap_tool);
if (job_assumes(j, bootstrapper != NULL)) {
job_dispatch(bootstrapper, true);
}
- return 0;
+
+ kr = 0;
+ goto out;
}
if (getpid() != 1 && job_mig_intran(target_subset)) {
- job_assumes(j, launchd_mport_deallocate(target_subset) == KERN_SUCCESS);
- return 0;
+ kr = 0;
+ goto out;
}
- kr = _vproc_grab_subset(target_subset, &reqport,
- &rcvright, &l2l_names, &l2l_name_cnt,
- &l2l_pids, &l2l_pid_cnt,
- &l2l_ports, &l2l_port_cnt);
-
- if (job_assumes(j, kr == 0)) {
- job_assumes(j, launchd_mport_deallocate(target_subset) == KERN_SUCCESS);
- } else {
+ if (!job_assumes(j, (kr = _vproc_grab_subset(target_subset, &reqport, &rcvright, &l2l_names, &l2l_name_cnt, &l2l_pids, &l2l_pid_cnt, &l2l_ports, &l2l_port_cnt)) == 0)) {
goto out;
}
launchd_assert(l2l_name_cnt == l2l_port_cnt);
launchd_assert(l2l_name_cnt == l2l_pid_cnt);
- if ((jmr = jobmgr_new(j->mgr, reqport, rcvright, false, session_type)) == NULL) {
+ if (!job_assumes(j, (jmr = jobmgr_new(j->mgr, reqport, rcvright, false, session_type)) != NULL)) {
kr = BOOTSTRAP_NO_MEMORY;
goto out;
}
@@ -5244,6 +5238,7 @@
struct machservice *ms;
if (!jobmgr_assumes(jmr, j_for_service != NULL)) {
+ kr = BOOTSTRAP_NO_MEMORY;
goto out;
}
@@ -5264,7 +5259,10 @@
if (l2l_pids) {
mig_deallocate((vm_address_t)l2l_pids, l2l_pid_cnt * sizeof(l2l_pids[0]));
}
- if (kr && jmr) {
+
+ if (kr == 0) {
+ job_assumes(j, launchd_mport_deallocate(target_subset) == KERN_SUCCESS);
+ } else if (jmr) {
jobmgr_shutdown(jmr);
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/launchd-changes/attachments/20070427/9ef5c10b/attachment.html
More information about the launchd-changes
mailing list