]> git.sur5r.net Git - openldap/commitdiff
Fix epoll, slapd_remove gets called multiple times for the same descriptor.
authorHoward Chu <hyc@openldap.org>
Mon, 17 Oct 2005 17:31:48 +0000 (17:31 +0000)
committerHoward Chu <hyc@openldap.org>
Mon, 17 Oct 2005 17:31:48 +0000 (17:31 +0000)
Ignore subsequent calls.

servers/slapd/daemon.c

index 6f796b493c592ac792e9957eebd485a0f0d5a09c..ed6078081b11c201caa9560393ee6651ddd38548 100644 (file)
@@ -194,6 +194,7 @@ static struct slap_daemon {
 
 # define SLAP_DEL_SOCK(s) do { \
        int fd, rc, index = SLAP_SOCK_IX((s)); \
+       if ( index < 0 ) break; \
        rc = epoll_ctl(slap_daemon.sd_epfd, EPOLL_CTL_DEL, \
                (s), &SLAP_SOCK_EP((s))); \
        slap_daemon.sd_epolls[index] = \