Revision: 23022 http://trac.macosforge.org/projects/launchd/changeset/23022 Author: zarzycki@apple.com Date: 2007-01-25 13:45:11 -0800 (Thu, 25 Jan 2007) Log Message: ----------- Let's not drop errno on the floor in this function. 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-01-24 21:46:56 UTC (rev 23021) +++ trunk/launchd/src/launchd_core_logic.c 2007-01-25 21:45:11 UTC (rev 23022) @@ -2912,6 +2912,7 @@ { mach_port_t p = jm->jm_port; pid_t r = -1; + int saved_errno; sigprocmask(SIG_BLOCK, &blocked_signals, NULL); @@ -2921,6 +2922,8 @@ r = fork(); + saved_errno = errno; + if (r != 0) { jobmgr_assumes(jm, launchd_set_bport(MACH_PORT_NULL) == KERN_SUCCESS); } else if (r == 0) { @@ -2935,6 +2938,7 @@ sigprocmask(SIG_UNBLOCK, &blocked_signals, NULL); + errno = saved_errno; return r; }