summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--generic/tclIO.c6
2 files changed, 8 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 4803a8e..98d77ec 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-12-01 Don Porter <dgp@users.sourceforge.net>
+
+ * generic/tclIO.c (TclFinalizeIOSubsystem): Revised latest commit to
+ something that doesn't crash the test suite.
+
2008-11-25 Andreas Kupries <andreask@activestate.com>
* generic/tclIO.c (TclFinalizeIOSubsystem): Applied backport of
diff --git a/generic/tclIO.c b/generic/tclIO.c
index 8b7dd2f..8e00054 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.61.2.31 2008/11/25 22:18:16 andreas_kupries Exp $
+ * RCS: @(#) $Id: tclIO.c,v 1.61.2.32 2008/12/01 21:48:01 dgp Exp $
*/
#include "tclInt.h"
@@ -235,7 +235,7 @@ TclFinalizeIOSubsystem(void)
statePtr != NULL;
statePtr = statePtr->nextCSPtr) {
chanPtr = statePtr->topChanPtr;
- if (!(statePtr->flags & CHANNEL_DEAD)) {
+ if (!(statePtr->flags & (CHANNEL_INCLOSE|CHANNEL_CLOSED|CHANNEL_DEAD))) {
active = 1;
break;
}
@@ -302,8 +302,8 @@ TclFinalizeIOSubsystem(void)
*/
chanPtr->instanceData = NULL;
+ statePtr->flags |= CHANNEL_DEAD;
}
- statePtr->flags |= CHANNEL_DEAD;
}
}