PROTON-1493: c epoll proactor fix bug in interrupt Missing rearm of interrupt file descriptor.
Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/54645b79 Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/54645b79 Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/54645b79 Branch: refs/heads/PROTON-1488 Commit: 54645b79372d60b51462ce832c5213e8dcb9d86c Parents: 4f724ac Author: Alan Conway <[email protected]> Authored: Fri Jun 2 14:09:04 2017 -0400 Committer: Alan Conway <[email protected]> Committed: Fri Jun 2 14:12:08 2017 -0400 ---------------------------------------------------------------------- proton-c/src/proactor/epoll.c | 1 + 1 file changed, 1 insertion(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/54645b79/proton-c/src/proactor/epoll.c ---------------------------------------------------------------------- diff --git a/proton-c/src/proactor/epoll.c b/proton-c/src/proactor/epoll.c index b258da3..3e5327e 100644 --- a/proton-c/src/proactor/epoll.c +++ b/proton-c/src/proactor/epoll.c @@ -1674,6 +1674,7 @@ static bool proactor_remove(pcontext_t *ctx) { static pn_event_batch_t *process_inbound_wake(pn_proactor_t *p, epoll_extended_t *ee) { if (ee->fd == p->interruptfd) { /* Interrupts have their own dedicated eventfd */ + rearm(p, &p->epoll_interrupt); return proactor_process(p, PN_PROACTOR_INTERRUPT); } pcontext_t *ctx = wake_pop_front(p); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
