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

source_changes at macosforge.org source_changes at macosforge.org
Mon Oct 16 16:43:11 PDT 2006


Revision: 22901
          http://trac.macosforge.org/projects/launchd/changeset/22901
Author:   zarzycki at apple.com
Date:     2006-10-16 16:43:11 -0700 (Mon, 16 Oct 2006)

Log Message:
-----------
<rdar://problem/4773962> Bug: launchd_core_logic.c:2170 (22866):2: kevent_mod(sg->fds[i], EVFILT_READ, EV_DELETE, 0, 0, NULL) != -1

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

Modified: trunk/launchd/src/launchd_core_logic.c
===================================================================
--- trunk/launchd/src/launchd_core_logic.c	2006-10-16 21:57:58 UTC (rev 22900)
+++ trunk/launchd/src/launchd_core_logic.c	2006-10-16 23:43:11 UTC (rev 22901)
@@ -234,7 +234,7 @@
 		     anonymous:1;
 	mode_t mask;
 	unsigned int globargv:1, wait4debugger:1, transfer_bstrap:1, unload_at_exit:1, force_ppc:1,
-		     stall_before_exec:1, only_once:1;
+		     stall_before_exec:1, only_once:1, currently_ignored:1;
 	char label[0];
 };
 
@@ -332,6 +332,12 @@
 	struct machservice *ms;
 	struct watchpath *wp;
 
+	if (j->currently_ignored) {
+		return;
+	}
+	
+	j->currently_ignored = true;
+
 	SLIST_FOREACH(sg, &j->sockets, sle) {
 		socketgroup_ignore(j, sg);
 	}
@@ -352,6 +358,12 @@
 	struct machservice *ms;
 	struct watchpath *wp;
 
+	if (!job_assumes(j, j->currently_ignored)) {
+		return;
+	}
+
+	j->currently_ignored = false;
+
 	SLIST_FOREACH(sg, &j->sockets, sle) {
 		socketgroup_watch(j, sg);
 	}

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/launchd-changes/attachments/20061016/1a9ef77d/attachment.html


More information about the launchd-changes mailing list