summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandreas_kupries <akupries@shaw.ca>2006-10-16 16:52:01 (GMT)
committerandreas_kupries <akupries@shaw.ca>2006-10-16 16:52:01 (GMT)
commitef349994fd54b04e97fd19b6835ab4f1ec2f8519 (patch)
tree3ddf7dff96e328ac27db57b4529d62d95c025c85
parent601d05815ca793de0e657f3b8517727185f983ed (diff)
downloadtcl-ef349994fd54b04e97fd19b6835ab4f1ec2f8519.zip
tcl-ef349994fd54b04e97fd19b6835ab4f1ec2f8519.tar.gz
tcl-ef349994fd54b04e97fd19b6835ab4f1ec2f8519.tar.bz2
* generic/tclBasic.c: Moved TIP#219 cleanup to DeleteInterpProc.
-rw-r--r--ChangeLog4
-rw-r--r--generic/tclBasic.c20
2 files changed, 14 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 6ba5750..b5da6d6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2006-10-16 Andreas Kupries <andreask@activestate.com>
+
+ * generic/tclBasic.c: Moved TIP#219 cleanup to DeleteInterpProc.
+
2006-10-16 Daniel Steffen <das@users.sourceforge.net>
*** 8.5a5 TAGGED FOR RELEASE ***
diff --git a/generic/tclBasic.c b/generic/tclBasic.c
index c931281..49211d0 100644
--- a/generic/tclBasic.c
+++ b/generic/tclBasic.c
@@ -13,7 +13,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclBasic.c,v 1.197 2006/09/22 18:13:27 andreas_kupries Exp $
+ * RCS: @(#) $Id: tclBasic.c,v 1.198 2006/10/16 16:52:01 andreas_kupries Exp $
*/
#include "tclInt.h"
@@ -919,15 +919,6 @@ Tcl_DeleteInterp(
iPtr->compileEpoch++;
/*
- * TIP #219, Tcl Channel Reflection API. Discard a leftover state.
- */
-
- if (iPtr->chanMsg != NULL) {
- Tcl_DecrRefCount (iPtr->chanMsg);
- iPtr->chanMsg = NULL;
- }
-
- /*
* Ensure that the interpreter is eventually deleted.
*/
@@ -983,6 +974,15 @@ DeleteInterpProc(
}
/*
+ * TIP #219, Tcl Channel Reflection API. Discard a leftover state.
+ */
+
+ if (iPtr->chanMsg != NULL) {
+ Tcl_DecrRefCount (iPtr->chanMsg);
+ iPtr->chanMsg = NULL;
+ }
+
+ /*
* Shut down all limit handler callback scripts that call back into this
* interpreter. Then eliminate all limit handlers for this interpreter.
*/