[launchd-changes] [23001] trunk/launchd/src/launchd_core_logic.c

source_changes at macosforge.org source_changes at macosforge.org
Thu Jan 4 12:17:27 PST 2007


Revision: 23001
          http://trac.macosforge.org/projects/launchd/changeset/23001
Author:   zarzycki at apple.com
Date:     2007-01-04 12:17:27 -0800 (Thu, 04 Jan 2007)

Log Message:
-----------
Prepare for growth.

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-04 20:05:30 UTC (rev 23000)
+++ trunk/launchd/src/launchd_core_logic.c	2007-01-04 20:17:27 UTC (rev 23001)
@@ -306,6 +306,7 @@
 static pid_t job_get_pid(job_t j);
 static jobmgr_t job_get_bs(job_t j);
 static void job_uncork_fork(job_t j);
+static void job_log_stdouterr(job_t j);
 static void job_logv(job_t j, int pri, int err, const char *msg, va_list ap);
 static void job_log(job_t j, int pri, const char *msg, ...) __attribute__((format(printf, 3, 4)));
 static void job_log_error(job_t j, int pri, const char *msg, ...) __attribute__((format(printf, 3, 4)));
@@ -1683,6 +1684,31 @@
 }
 
 void
+job_log_stdouterr(job_t j)
+{
+	char buf[4001];
+	ssize_t rsz;
+
+	rsz = read(j->log_redirect_fd, buf, sizeof(buf) - 1);
+
+	if (rsz == 0) {
+		job_assumes(j, close(j->log_redirect_fd) != -1);
+		j->log_redirect_fd = 0;
+	} else if (job_assumes(j, rsz != -1)) {
+		buf[rsz] = '\0';
+		switch (buf[0]) {
+		case '\n':
+		case '\r':
+		case '\0':
+			break;
+		default:
+			job_log(j, LOG_NOTICE, "Standard Out/Error: %s", buf);
+			break;
+		}
+	}
+}
+
+void
 job_callback(void *obj, struct kevent *kev)
 {
 	job_t j = obj;
@@ -1716,26 +1742,7 @@
 		break;
 	case EVFILT_READ:
 		if (kev->ident == (uintptr_t)j->log_redirect_fd) {
-			char buf[4001];
-			ssize_t rsz;
-
-			rsz = read(j->log_redirect_fd, buf, sizeof(buf) - 1);
-
-			if (rsz == 0) {
-				job_assumes(j, close(j->log_redirect_fd) != -1);
-				j->log_redirect_fd = 0;
-			} else if (job_assumes(j, rsz != -1)) {
-				buf[rsz] = '\0';
-				switch (buf[0]) {
-				case '\n':
-				case '\r':
-				case '\0':
-					break;
-				default:
-					job_log(j, LOG_NOTICE, "Standard Out/Error: %s", buf);
-					break;
-				}
-			}
+			job_log_stdouterr(j);
 		} else {
 			socketgroup_callback(j, kev);
 		}

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/launchd-changes/attachments/20070104/7ae8f4a4/attachment.html


More information about the launchd-changes mailing list