From 31743e869875ae77eabfb6f822fc014b0822ccf9 Mon Sep 17 00:00:00 2001 From: andreask Date: Mon, 28 Oct 2013 20:21:13 +0000 Subject: Tweak to the fix. Tcl_InitNotifier() hangs. Removed. Fixes exec. Unclear about Rivet with original case. --- unix/tclUnixNotfy.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/unix/tclUnixNotfy.c b/unix/tclUnixNotfy.c index 025dfd4..505d205 100644 --- a/unix/tclUnixNotfy.c +++ b/unix/tclUnixNotfy.c @@ -1344,21 +1344,16 @@ AtForkChildProc(void) /* * Reset the notifier reference count to zero (i.e. not initialized). * This should force the notifier initialization code to be re-run the - * very next time Tcl_InitNotifier is called, which will be just below - * this statement. + * very next time Tcl_InitNotifier is called. + * + * For a plain [exec ...] this will not happen, and everything is fine. + * For a full fork of the interpreter (like apache Rivet) it is not clear + * to me (AK) where TIN would be called. */ notifierCount = 0; /* - * Force the notifier subsystem to be initialized now. This should - * create the notifier thread in this process. Subsequently, that new - * thread will re-open the trigger pipe. - */ - - Tcl_InitNotifier(); - - /* * Finally, release the notifier mutex (which has been held since the * AtForkPrepareProc() was called via pthread_atfork()). */ -- cgit v0.12