The branch, master has been updated via 8f98f5d tevent: change version to 0.9.19 via 066a642 tevent: Remove the signal pipe if no signal events are around from f9d19c4 Ensure gpfs kernel leases are wrapped in a become_root()/unbecome_root() pair.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 8f98f5d85ae30361f6bb9f6f42d6a7fd279301e1 Author: Stefan Metzmacher <me...@samba.org> Date: Thu Aug 1 13:13:04 2013 +0200 tevent: change version to 0.9.19 * Fix tevent testsuite issue on Solaris. * Add tevent tuturial and documentation updates * Fix Coverity ID 989236 Operands don't affect result * Bug: https://bugzilla.samba.org/show_bug.cgi?id=10012 Signed-off-by: Stefan Metzmacher <me...@samba.org> Autobuild-User(master): Stefan Metzmacher <me...@samba.org> Autobuild-Date(master): Thu Aug 1 17:05:02 CEST 2013 on sn-devel-104 commit 066a642f10cae7980eefb2d8ada3a6c3f5220542 Author: Volker Lendecke <v...@samba.org> Date: Wed Jul 31 11:31:57 2013 +0200 tevent: Remove the signal pipe if no signal events are around It makes adding/removing the first/last sigevents a bit more expensive, but it will fix tevent_loop_wait not finishing when one signal event was added and removed. Bug: https://bugzilla.samba.org/show_bug.cgi?id=10012 Signed-off-by: Volker Lendecke <v...@samba.org> Signed-off-by: Stefan Metzmacher <me...@samba.org> Reviewed-by: Andreas Schneider <a...@samba.org> ----------------------------------------------------------------------- Summary of changes: .../ABI/{tevent-0.9.18.sigs => tevent-0.9.19.sigs} | 0 lib/tevent/tevent_signal.c | 14 +++++++++++++- lib/tevent/wscript | 2 +- 3 files changed, 14 insertions(+), 2 deletions(-) copy lib/tevent/ABI/{tevent-0.9.18.sigs => tevent-0.9.19.sigs} (100%) Changeset truncated at 500 lines: diff --git a/lib/tevent/ABI/tevent-0.9.18.sigs b/lib/tevent/ABI/tevent-0.9.19.sigs similarity index 100% copy from lib/tevent/ABI/tevent-0.9.18.sigs copy to lib/tevent/ABI/tevent-0.9.19.sigs diff --git a/lib/tevent/tevent_signal.c b/lib/tevent/tevent_signal.c index 0fdf646..8e13d73 100644 --- a/lib/tevent/tevent_signal.c +++ b/lib/tevent/tevent_signal.c @@ -175,7 +175,19 @@ static int tevent_signal_destructor(struct tevent_signal *se) struct tevent_common_signal_list); if (se->event_ctx) { - DLIST_REMOVE(se->event_ctx->signal_events, se); + struct tevent_context *ev = se->event_ctx; + + DLIST_REMOVE(ev->signal_events, se); + + if (ev->signal_events == NULL && ev->pipe_fde != NULL) { + /* + * This was the last signal. Destroy the pipe. + */ + TALLOC_FREE(ev->pipe_fde); + + close(ev->pipe_fds[0]); + close(ev->pipe_fds[1]); + } } talloc_free(sl); diff --git a/lib/tevent/wscript b/lib/tevent/wscript index 02bddb8..39f2ae4 100755 --- a/lib/tevent/wscript +++ b/lib/tevent/wscript @@ -1,7 +1,7 @@ #!/usr/bin/env python APPNAME = 'tevent' -VERSION = '0.9.18' +VERSION = '0.9.19' blddir = 'bin' -- Samba Shared Repository