tevent_poll: call tevent_common_fd_destructor() from poll_fresh_fde_destructor()
authorStefan Metzmacher <metze@samba.org>
Fri, 1 Feb 2013 14:56:34 +0000 (15:56 +0100)
committerJeremy Allison <jra@samba.org>
Sun, 3 Feb 2013 03:53:47 +0000 (19:53 -0800)
We need to trigger the fde->close_fn().

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
lib/tevent/tevent_poll.c

index 7d106653530bfe46171cf55c2cbde515626845fb..b8221a44ceaeb89682f8b9be675f72f9a6dcf963 100644 (file)
@@ -222,13 +222,14 @@ static int poll_fresh_fde_destructor(struct tevent_fd *fde)
        struct poll_event_context *poll_ev;
 
        if (ev == NULL) {
-               return 0;
+               goto done;
        }
        poll_ev = talloc_get_type_abort(
                ev->additional_data, struct poll_event_context);
 
        DLIST_REMOVE(poll_ev->fresh, fde);
-       return 0;
+done:
+       return tevent_common_fd_destructor(fde);
 }
 
 static void poll_event_schedule_immediate(struct tevent_immediate *im,