Commit Diff


commit - 2ce5b734bdac5de7dc46a6e3ec2ef5c861995b61
commit + 91a6fffaa01be7b84d1f072d474c7c2181b00ab6
blob - 2c887bd019313853f77c99970b748e5a3663bd67
blob + d40b4850ce7d2794b8daaf37df261b49e8fc55bc
--- src/ngircd/io.c
+++ src/ngircd/io.c
@@ -12,7 +12,7 @@
 
 #include "portab.h"
 
-static char UNUSED id[] = "$Id: io.c,v 1.27 2007/12/27 18:25:26 fw Exp $";
+static char UNUSED id[] = "$Id: io.c,v 1.28 2008/01/02 10:29:51 fw Exp $";
 
 #include <assert.h>
 #include <stdlib.h>
@@ -635,6 +635,9 @@ io_event_del(int fd, short what)
 #endif
 	if (!i) return false;
 
+	if (!(i->what & what)) /* event is already disabled */
+		return true;
+
 	i->what &= ~what;
 
 #ifdef IO_USE_DEVPOLL