diff options
| author | Kevin B Kenny <kennykb@acm.org> | 2005-08-10 16:28:02 (GMT) |
|---|---|---|
| committer | Kevin B Kenny <kennykb@acm.org> | 2005-08-10 16:28:02 (GMT) |
| commit | a34b069f6eaf91a2426c5595de1381e6c3be0e8c (patch) | |
| tree | ce5b8f25cb00c8c29937e43b0557eb4cbf34b730 /generic/tclEvent.c | |
| parent | 93c9a3655b45d465b62d01db5ca74abc9771bbee (diff) | |
| download | tcl-a34b069f6eaf91a2426c5595de1381e6c3be0e8c.zip tcl-a34b069f6eaf91a2426c5595de1381e6c3be0e8c.tar.gz tcl-a34b069f6eaf91a2426c5595de1381e6c3be0e8c.tar.bz2 | |
further untangling of Tcl_Finalize, and test cleanup on Win32 threaded
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 66c8f85..713ef30 100644 --- a/generic/tclEvent.c +++ b/generic/tclEvent.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: tclEvent.c,v 1.61 2005/08/03 22:25:11 dgp Exp $ + * RCS: @(#) $Id: tclEvent.c,v 1.62 2005/08/10 16:28:02 kennykb Exp $ */ #include "tclInt.h" @@ -922,24 +922,6 @@ Tcl_Finalize() TclFinalizeThreadData(); /* - * 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(); - - /* * Now we can free constants for conversions to/from double. */ @@ -972,6 +954,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. */ |
