Tcl Source Code

Check-in [d7d7d0857d]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Make sure that panic's during finalization are handled by the custom panicproc not by the default panicproc, because stderr might not be available. When the default panicproc is in use, this doesn't make any difference.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: d7d7d0857dd5d4a851608e7ceeed0b7ccd50187f
User & Date: jan.nijtmans 2013-09-20 09:11:51
Context
2013-09-23
11:27
workaround for mingw bug http://comments.gmane.org/gmane.comp.gnu.mingw.user/41724 check-in: 146b87c2f1 user: jan.nijtmans tags: trunk
2013-09-21
12:49
merge trunk check-in: 7c19121b2e user: dgp tags: novem
2013-09-20
13:05
Potential fix for issues relating to lack of errorCode setting with unknown command handling. Leaf check-in: cb6e704762 user: dkf tags: bug-unknown-no-errorcode
12:13
merge trunk check-in: eb9d41af7b user: dgp tags: dgp-refactor
09:11
Make sure that panic's during finalization are handled by the custom panicproc not by the default pa... check-in: d7d7d0857d user: jan.nijtmans tags: trunk
05:28
merge release check-in: 63009ab07c user: dgp tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to generic/tclEvent.c.

1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
     * 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();

    Tcl_SetPanicProc(NULL);

    /*
     * Repeat finalization of the thread local storage once more. Although
     * this step is already done by the Tcl_FinalizeThread call above, series
     * of events happening afterwards may re-initialize TSD slots. Those need
     * to be finalized again, otherwise we're leaking memory chunks. Very
     * important to note is that things happening afterwards should not
     * reference anything which may re-initialize TSD's. This includes freeing







<
<







1167
1168
1169
1170
1171
1172
1173


1174
1175
1176
1177
1178
1179
1180
     * 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();



    /*
     * Repeat finalization of the thread local storage once more. Although
     * this step is already done by the Tcl_FinalizeThread call above, series
     * of events happening afterwards may re-initialize TSD slots. Those need
     * to be finalized again, otherwise we're leaking memory chunks. Very
     * important to note is that things happening afterwards should not
     * reference anything which may re-initialize TSD's. This includes freeing