From 67c5b022a4510b3cfcdfc2b486a63220b8f3eef0 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sat, 2 Jun 2007 00:32:49 +0000 Subject: r23301: merged from ctdb (This used to be commit 76b981fcefb0dff24ac7d543da70fbb487ed7072) --- source4/lib/events/events_aio.c | 2 ++ source4/lib/events/events_epoll.c | 2 ++ source4/lib/events/events_standard.c | 2 ++ 3 files changed, 6 insertions(+) (limited to 'source4') diff --git a/source4/lib/events/events_aio.c b/source4/lib/events/events_aio.c index afc806a276..8cc100dede 100644 --- a/source4/lib/events/events_aio.c +++ b/source4/lib/events/events_aio.c @@ -393,6 +393,8 @@ static int aio_event_fd_destructor(struct fd_event *fde) struct aio_event_context *aio_ev = talloc_get_type(ev->additional_data, struct aio_event_context); + epoll_check_reopen(aio_ev); + aio_ev->num_fd_events--; aio_ev->destruction_count++; diff --git a/source4/lib/events/events_epoll.c b/source4/lib/events/events_epoll.c index 9874377141..717ea94064 100644 --- a/source4/lib/events/events_epoll.c +++ b/source4/lib/events/events_epoll.c @@ -342,6 +342,8 @@ static int epoll_event_fd_destructor(struct fd_event *fde) struct epoll_event_context *epoll_ev = talloc_get_type(ev->additional_data, struct epoll_event_context); + epoll_check_reopen(epoll_ev); + epoll_ev->num_fd_events--; epoll_ev->destruction_count++; diff --git a/source4/lib/events/events_standard.c b/source4/lib/events/events_standard.c index fd4b88008b..8761b12873 100644 --- a/source4/lib/events/events_standard.c +++ b/source4/lib/events/events_standard.c @@ -379,6 +379,8 @@ static int std_event_fd_destructor(struct fd_event *fde) struct std_event_context *std_ev = talloc_get_type(ev->additional_data, struct std_event_context); + epoll_check_reopen(std_ev); + if (std_ev->maxfd == fde->fd) { std_ev->maxfd = EVENT_INVALID_MAXFD; } -- cgit