summaryrefslogtreecommitdiffstats
path: root/generic/tclObj.c
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2005-08-03 22:23:16 (GMT)
committerdgp <dgp@users.sourceforge.net>2005-08-03 22:23:16 (GMT)
commit3a01c00096553941d5e1f1cc1e2048bb9b119376 (patch)
tree85f6e39a72f6b9fc313e2cf60c7608fcd62b4c01 /generic/tclObj.c
parentc918210ee55ae018cc40f8a8b411feed5af07de4 (diff)
downloadtcl-3a01c00096553941d5e1f1cc1e2048bb9b119376.zip
tcl-3a01c00096553941d5e1f1cc1e2048bb9b119376.tar.gz
tcl-3a01c00096553941d5e1f1cc1e2048bb9b119376.tar.bz2
* generic/tclCompExpr.c: Untangled some dependencies in the
* generic/tclEvent.c: order of finalization routines. * generic/tclInt.h: [Bug 1251399] * generic/tclObj.c:
Diffstat (limited to 'generic/tclObj.c')
-rw-r--r--generic/tclObj.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/generic/tclObj.c b/generic/tclObj.c
index 3cf3760..494b80e 100644
--- a/generic/tclObj.c
+++ b/generic/tclObj.c
@@ -11,7 +11,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclObj.c,v 1.42.2.10 2005/04/20 16:06:17 dgp Exp $
+ * RCS: @(#) $Id: tclObj.c,v 1.42.2.11 2005/08/03 22:23:43 dgp Exp $
*/
#include "tclInt.h"
@@ -272,23 +272,22 @@ TclInitObjSubsystem()
/*
*----------------------------------------------------------------------
*
- * TclFinalizeCompExecEnv --
+ * TclFinalizeObjects --
*
- * This procedure is called by Tcl_Finalize to clean up the Tcl
- * compilation and execution environment so it can later be properly
- * reinitialized.
+ * This procedure is called by Tcl_Finalize to clean up all
+ * registered Tcl_ObjType's and to reset the tclFreeObjList.
*
* Results:
* None.
*
* Side effects:
- * Cleans up the compilation and execution environment
+ * None.
*
*----------------------------------------------------------------------
*/
void
-TclFinalizeCompExecEnv()
+TclFinalizeObjects()
{
Tcl_MutexLock(&tableMutex);
if (typeTableInitialized) {
@@ -296,12 +295,15 @@ TclFinalizeCompExecEnv()
typeTableInitialized = 0;
}
Tcl_MutexUnlock(&tableMutex);
+
+ /*
+ * All we do here is reset the head pointer of the linked list of
+ * free Tcl_Obj's to NULL; the memory finalization will take care
+ * of releasing memory for us.
+ */
Tcl_MutexLock(&tclObjMutex);
tclFreeObjList = NULL;
Tcl_MutexUnlock(&tclObjMutex);
-
- TclFinalizeCompilation();
- TclFinalizeExecution();
}
/*