From b46ac47858df6ae1a647fde89d9f054e9bfb23f7 Mon Sep 17 00:00:00 2001 From: vasiljevic Date: Thu, 13 Oct 2005 21:01:28 +0000 Subject: Added some more clarifying comments in Tcl_ClearChannelHandlers() --- generic/tclIO.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/generic/tclIO.c b/generic/tclIO.c index 8adc8db..f6c96f8 100644 --- a/generic/tclIO.c +++ b/generic/tclIO.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclIO.c,v 1.96 2005/10/13 20:51:53 vasiljevic Exp $ + * RCS: @(#) $Id: tclIO.c,v 1.97 2005/10/13 21:01:28 vasiljevic Exp $ */ #include "tclInt.h" @@ -2927,14 +2927,13 @@ Tcl_ClearChannelHandlers(channel) * file-events still sitting in the event queue of the current thread. * We deliberately do not call UpdateInterest() because this could * re-schedule new events if the channel still needs to be flushed. + * This should happen all the time, but Linux 2.4 systems seem to lose + * the flush on close in some cases (socket-9.2 socket-11.13) if this is + * used, so restrict it to TCL_THREADS, where you can otherwise crash + * numerous systems. [Bug 1323992] */ - - statePtr->interestMask = 0; - /* - * TEMPORARILY DEFINED FOR THREADED BUILD ONLY. SEE SF BUG# 1323992 - */ - + statePtr->interestMask = 0; #ifdef TCL_THREADS (chanPtr->typePtr->watchProc)(chanPtr->instanceData, 0); #endif -- cgit v0.12