diff options
Diffstat (limited to 'generic/tclEvent.c')
-rw-r--r-- | generic/tclEvent.c | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/generic/tclEvent.c b/generic/tclEvent.c index 957c5f6..28b3489 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.24 2002/11/07 02:13:36 mdejong Exp $ + * RCS: @(#) $Id: tclEvent.c,v 1.25 2002/12/04 13:09:23 vincentdarley Exp $ */ #include "tclInt.h" @@ -812,6 +812,22 @@ Tcl_Finalize() TclFinalizeCompExecEnv(); TclFinalizeEnvironment(); + /* + * Finalizing the filesystem must come after anything which + * might conceivably interact with the 'Tcl_FS' API. This + * will also unload any extensions which have been loaded. + * However, it also needs access to the encoding subsystem + * during finalization, so that system must still be intact + * at this point. + */ + TclFinalizeFilesystem(); + + /* + * We must be sure the encoding finalization doesn't need + * to examine the filesystem in any way. Since it only + * needs to clean up internal data structures, this is + * fine. + */ TclFinalizeEncodingSubsystem(); if (tclExecutableName != NULL) { @@ -836,13 +852,6 @@ Tcl_Finalize() TclFinalizeSynchronization(); - /** - * Finalizing the filesystem must come after anything which - * might conceivably interact with the 'Tcl_FS' API. This - * will also unload any extensions which have been loaded. - */ - TclFinalizeFilesystem(); - /* * There shouldn't be any malloc'ed memory after this. */ |