summaryrefslogtreecommitdiffstats
path: root/generic/tclPreserve.c
diff options
context:
space:
mode:
authorKevin B Kenny <kennykb@acm.org>2005-06-24 18:21:36 (GMT)
committerKevin B Kenny <kennykb@acm.org>2005-06-24 18:21:36 (GMT)
commit59a6d33cced0379c77fe74ddfe007f79ca0c0f40 (patch)
treee61562eda7d9ce59a92bc8c1e14fda5f852ffe6d /generic/tclPreserve.c
parent398b7259c8c32271fc056be36fa16930498ca341 (diff)
downloadtcl-59a6d33cced0379c77fe74ddfe007f79ca0c0f40.zip
tcl-59a6d33cced0379c77fe74ddfe007f79ca0c0f40.tar.gz
tcl-59a6d33cced0379c77fe74ddfe007f79ca0c0f40.tar.bz2
finalize Tcl_Preserve after exit handlers
Diffstat (limited to 'generic/tclPreserve.c')
-rw-r--r--generic/tclPreserve.c17
1 files changed, 4 insertions, 13 deletions
diff --git a/generic/tclPreserve.c b/generic/tclPreserve.c
index 04615b7..9352e84 100644
--- a/generic/tclPreserve.c
+++ b/generic/tclPreserve.c
@@ -12,7 +12,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclPreserve.c,v 1.3.34.1 2003/07/16 21:25:07 hobbs Exp $
+ * RCS: @(#) $Id: tclPreserve.c,v 1.3.34.2 2005/06/24 18:21:41 kennykb Exp $
*/
#include "tclInt.h"
@@ -66,17 +66,11 @@ typedef struct HandleStruct {
} HandleStruct;
-/*
- * Static routines in this file:
- */
-
-static void PreserveExitProc _ANSI_ARGS_((ClientData clientData));
-
/*
*----------------------------------------------------------------------
*
- * PreserveExitProc --
+ * TclFinalizePreserve --
*
* Called during exit processing to clean up the reference array.
*
@@ -90,9 +84,8 @@ static void PreserveExitProc _ANSI_ARGS_((ClientData clientData));
*/
/* ARGSUSED */
-static void
-PreserveExitProc(clientData)
- ClientData clientData; /* NULL -Unused. */
+void
+TclFinalizePreserve()
{
Tcl_MutexLock(&preserveMutex);
if (spaceAvl != 0) {
@@ -151,8 +144,6 @@ Tcl_Preserve(clientData)
if (inUse == spaceAvl) {
if (spaceAvl == 0) {
- Tcl_CreateExitHandler((Tcl_ExitProc *) PreserveExitProc,
- (ClientData) NULL);
refArray = (Reference *) ckalloc((unsigned)
(INITIAL_SIZE*sizeof(Reference)));
spaceAvl = INITIAL_SIZE;