Commits

Anonymous committed 33eac85

[svn] Our way of using kqueue may cause it to report fds we
don't know about anymore, cope.

  • Participants
  • Parent commits 1595cd1

Comments (0)

Files changed (3)

+jilles      2007/03/05 17:41:40 UTC	(20070305-3239)
+  Log:
+  Don't reference freed memory (fde_t) in comm_close().
+  
+
+  Changes:	Modified:
+  +1 -1		trunk/libcharybdis/commio.c (File Modified) 
+
+
 nenolod     2007/03/05 17:35:17 UTC	(20070305-3237)
   Log:
   - fix for 100% cpu use
-#define SERNO "20070305-3237"
+#define SERNO "20070305-3239"

libcharybdis/kqueue.c

  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
  *  USA
  *
- *  $Id: kqueue.c 3229 2007-03-05 17:23:07Z nenolod $
+ *  $Id: kqueue.c 3241 2007-03-05 17:52:28Z jilles $
  */
 
 #include "stdinc.h"
 			/* XXX error == bad! -- adrian */
 			continue;	/* XXX! */
 		}
+		if (F == NULL)
+		{
+			/* XXX this is because of our "queueing" of
+			 * kqueue changes so we may get ones for fds
+			 * we have already closed? -- jilles */
+			continue;
+		}
 
 		switch (ke[i].filter)
 		{