Posted to tcl by dgp at Thu Apr 25 17:45:29 GMT 2013view pretty

Index: generic/tclEvent.c
==================================================================
--- generic/tclEvent.c
+++ generic/tclEvent.c
@@ -1020,11 +1020,11 @@
 {
     if (inExit != 0) {
        Tcl_Panic("TclInitSubsystems called while exiting");
     }
 
-    if (subsystemsInitialized == 0) {
+    if (subsystemsInitialized < 2) {
        /*
         * Double check inside the mutex. There are definitly calls back into
         * this routine from some of the functions below.
         */
 
@@ -1059,10 +1059,11 @@
                                         * mutexes. */
            TclInitIOSubsystem();       /* Inits a tsd key (noop). */
            TclInitEncodingSubsystem(); /* Process wide encoding init. */
            TclpSetInterfaces();
            TclInitNamespaceSubsystem();/* Register ns obj type (mutexed). */
+           subsystemsInitialized = 2;
        }
        TclpInitUnlock();
     }
     TclInitNotifier();
 }