From 4aba7752195ffda980abf4a98b870d113615f662 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Fri, 12 Aug 2011 11:56:28 +1000 Subject: tevent: don't force the nesting flag to false in the destructor the tevent destructor is called in tevent_re_initialise(), to reset the event context back to its original state for creating child processes. We need the nesting flag to stay the same Pair-Programmed-With: Andrew Bartlett Autobuild-User: Andrew Tridgell Autobuild-Date: Fri Aug 12 05:18:25 CEST 2011 on sn-devel-104 --- lib/tevent/tevent.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'lib') diff --git a/lib/tevent/tevent.c b/lib/tevent/tevent.c index 51555bae5d..a87865b41a 100644 --- a/lib/tevent/tevent.c +++ b/lib/tevent/tevent.c @@ -185,9 +185,13 @@ int tevent_common_context_destructor(struct tevent_context *ev) tevent_cleanup_pending_signal_handlers(se); } - /* clean up nesting or we get an abort when nesting - * is not allowed. -- SSS */ - ev->nesting.allowed = false; + /* removing nesting hook or we get an abort when nesting is + * not allowed. -- SSS + * Note that we need to leave the allowed flag at its current + * value, otherwise the use in tevent_re_initialise() will + * leave the event context with allowed forced to false, which + * will break users that expect nesting to be allowed + */ ev->nesting.level = 0; ev->nesting.hook_fn = NULL; ev->nesting.hook_private = NULL; -- cgit