| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
streamlining of [exit], by conditionally forcing a full Finalize: use -DPURIFY or ::env(TCL_FINALIZE_ON_EXIT)
|
| |
|
| |
|
|
|
| |
rest of Tcl source code. No ABI change. API change *should* be harmless.
|
|
|
| |
the Engineering Manual.
|
|\
| |
| | |
cause more harm than good. Purged them (except in zlib files).
|
| |\
| | |
| | | |
more harm than good. Purged them.
|
| | |
| | |
| | | |
more harm than good. Purged them.
|
| | |
| | |
| | |
| | | |
"late exit handlers" for similar late process-wide cleanups.
|
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclPkg.c (CheckVersion): Tcl_Alloc() with calls to
* unix/tclUnixTime.c (SetTZIfNecessary): ckalloc(), which better
* win/tclAppInit.c (setargv): supports memory debugging.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclEvent.c: order of finalization routines.
* generic/tclInt.h: [Bug 1251399]
* generic/tclObj.c:
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
so that Tcl_ExitProc's that call Tcl_Finalize recursively do not
cause deadlock. [Patch 999084 fixes Tk Bug 714956]
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclInt.h: fully cleanup on exit and allow for
* generic/tclThreadAlloc.c: reinitialization. [Bug #736426]
* unix/tclUnixThrd.c: (mistachkin, kenny)
* win/tclWinThrd.c:
|
| | |
| | |
| | |
| | | |
since this will result in TclInitNotifier never being called.
|
| | |
| | |
| | |
| | | |
See SF bugreport for more info.
|
| | |
| | |
| | |
| | |
| | | |
in NewThreadProc(). This is backported from head. Thnx to Kevin Kenny for
spotting this.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
stringrep of the pathPtr object to TclGetLibraryPath called from
another thread was ineffective if the original's stringrep had
been invalidated as what happens when it gets muted to a list.
* generic/tclInt.h:
* generic/tclThread.c:
* generic/tclEvent.c:
* unix/tclUnixThrd.c:
* win/tclWinThrd.c: Provisions made so masterLock, initLock,
allocLock and joinLock mutexes can be recovered during
Tcl_Finalize.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclEvent.c: Tcl_GetReturnOptions() was leaked.
* generic/tclMain.c: Thanks to Jeff Hobbs for discovery of the
anti-pattern to seek and destroy.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
objThreadMap and lineCLPtr hashtables. Also make the names of the
continuation line information initialization and finalization
functions more consistent. Patch supplied by Joe Mistachkin
<joe@mistachkin.com>.
|
| | |
| | |
| | |
| | | |
"late exit handlers" for similar late process-wide cleanups.
|
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclEvent.c: Tcl_GetReturnOptions() was leaked.
* generic/tclMain.c: Thanks to Jeff Hobbs for discovery of the
anti-pattern to seek and destroy.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change TclpThreadCreate and Tcl_CreateThread
signature, making clear that "proc" is a function
pointer, as in all other "proc" function parameters.
|
| | | |
|
| | |
| | |
| | |
| | | |
calls thread exit handlers for the calling thread, which includes <Destroy> bindings in Tk [Bug 2001201 again].
|
| | | |
|
| | |
| | |
| | |
| | | |
[exit] wrt finalization, and thus solving many multi-thread teardown issues [Bugs 2001201, 486399, and possibly 597575, 990457, 1437595, 2750491].
|
| | |
| | |
| | |
| | |
| | | |
- some internal const decorations
- spacing
|
| | |
| | |
| | |
| | | |
handlers" for similar late process-wide cleanups.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* doc/BackgdErr.3: Converted internal routine
* doc/interp.n: TclBackgroundException() into public routine
* generic/tcl.decls: Tcl_BackgroundException().
* generic/tclEvent.c:
* generic/tclInt.decls:
* generic/tclDecls.h: make genstubs
* generic/tclIntDecls.h:
* generic/tclStubInit.c:
* generic/tclIO.c: Update callers.
* generic/tclIOCmd.c:
* generic/tclInterp.c:
* generic/tclTimer.c:
*** POTENTIAL INCOMPATIBILITY only for extensions using the converted
internal routine ***
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
const tables. No functional
or API change.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclEvent.c: on DLL_PROCESS_DETACH as it may lead
* win/tclWin32Dll.c (DllMain): to issues and the user should be
explicitly calling Tcl_Finalize before unloading regardless.
Clarify the docs to note the explicit need in embedded use.
|
| | | |
|
|/ / |
|
| |
| |
| |
| |
| | |
* tests/event.test (event-5.*): checking to protect against callers
passing invalid return options dictionaries. [Bug 1901113]
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
refcount management of Tcl_AppendObjToErrorInfo to become that of
a conventional Consumer routine. This preserves the ease of use
for the overwhelming common callers who pass in a 0-count value,
but makes the proper call with a non-0-count value less surprising.
* generic/tclEvent.c (TclDefaultBgErrorHandlerObjCmd): Revised the
one caller within Tcl itself which passes a non-0-count value to
Tcl_AppendObjToErrorInfo().
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
* tests/event.test: default [interp bgerror] handler so that when
it falls back to a hidden [bgerror] in a safe interp, it gets the
right error context data. [Bug 1790274].
|
| |
| |
| |
| |
| |
| |
| |
| | |
* tests/init.test: non-TCL_ERROR code doesn't cause existing
-errorinfo, -errorcode, and -errorline entries to be omitted.
* generic/tclEvent.c: With -errorInfo no longer lost, generate more
complete ::errorInfo when calling [bgerror] after a non-TCL_ERROR
background exception.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclEvent.c: that for the first time permits non-TCL_ERROR
exceptions to trigger [interp bgerror] handling. Closes a gap in
TIP 221. When falling back to [bgerror] (which is designed only
to handle TCL_ERROR), convert exceptions into errors complaining
about the exception.
* generic/tclInterp.c: Convert Tcl_BackgroundError() callers to call
* generic/tclIO.c: TclBackgroundException().
* generic/tclIOCmd.c:
* generic/tclTimer.c:
* generic/tclIntDecls.h: make genstubs
* generic/tclStubInit.c:
|
| |
| |
| |
| |
| | |
* generic/tclEvent.c: of expr parsing and compiling, including the
* generic/tclInt.h: routine TclFinalizeCompilation().
|
| |
| |
| |
| | |
efficient). After [Patch 1529526] (afredd)
|