diff options
author | kennykb <kennykb@noemail.net> | 2005-08-16 15:23:56 (GMT) |
---|---|---|
committer | kennykb <kennykb@noemail.net> | 2005-08-16 15:23:56 (GMT) |
commit | cad42b64ad305af25abaddd2ea7d7ad015b3ca9a (patch) | |
tree | 043fc269fcd11e1c2f152630d123467d31176474 /generic/tclEvent.c | |
parent | 87dc36cb1b0d26b9e9ea579c9867e9148f51c44f (diff) | |
download | tcl-cad42b64ad305af25abaddd2ea7d7ad015b3ca9a.zip tcl-cad42b64ad305af25abaddd2ea7d7ad015b3ca9a.tar.gz tcl-cad42b64ad305af25abaddd2ea7d7ad015b3ca9a.tar.bz2 |
backport of 2005-08-10 fix to tclEvent.c
FossilOrigin-Name: dd9d7470f54ef9a05876c80f8fb0d446690014d3
Diffstat (limited to 'generic/tclEvent.c')
-rw-r--r-- | generic/tclEvent.c | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/generic/tclEvent.c b/generic/tclEvent.c index c8944f7..ba065eb 100644 --- a/generic/tclEvent.c +++ b/generic/tclEvent.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: tclEvent.c,v 1.28.2.12 2005/08/03 22:23:42 dgp Exp $ + * RCS: @(#) $Id: tclEvent.c,v 1.28.2.13 2005/08/16 15:23:56 kennykb Exp $ */ #include "tclInt.h" @@ -884,24 +884,6 @@ Tcl_Finalize() Tcl_SetPanicProc(NULL); /* - * We defer unloading of packages until very late - * to avoid memory access issues. Both exit callbacks and - * synchronization variables may be stored in packages. - * - * Note that TclFinalizeLoad unloads packages in the reverse - * of the order they were loaded in (i.e. last to be loaded - * is the first to be unloaded). This can be important for - * correct unloading when dependencies exist. - * - * Once load has been finalized, we will have deleted any - * temporary copies of shared libraries and can therefore - * reset the filesystem to its original state. - */ - - TclFinalizeLoad(); - TclResetFilesystem(); - - /* * There have been several bugs in the past that cause * exit handlers to be established during Tcl_Finalize * processing. Such exit handlers leave malloc'ed memory, @@ -931,6 +913,24 @@ Tcl_Finalize() #endif /* + * We defer unloading of packages until very late + * to avoid memory access issues. Both exit callbacks and + * synchronization variables may be stored in packages. + * + * Note that TclFinalizeLoad unloads packages in the reverse + * of the order they were loaded in (i.e. last to be loaded + * is the first to be unloaded). This can be important for + * correct unloading when dependencies exist. + * + * Once load has been finalized, we will have deleted any + * temporary copies of shared libraries and can therefore + * reset the filesystem to its original state. + */ + + TclFinalizeLoad(); + TclResetFilesystem(); + + /* * At this point, there should no longer be any ckalloc'ed memory. */ |