Tcl Source Code

All files named ”generic/tclAsync.c”
Login

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

History for generic/tclAsync.c

2026-05-17
15:06
More indentation/spacing corrections; no behaviour changes file: ddec140fc7 check-in: [7c918d5f96] user: dkf branch: main, size: 11968
2026-04-09
19:54
Add a macro to declare a variable as 'used' when the compiler can't see it. For when TCL_UNUSED isn't so suitable. file: ef0f577435 check-in: [a41f6993bb] user: dkf branch: tcl-used, size: 11974
2026-02-23
09:17
Rebase to trunk. More bool's file: 5a33cc2980 check-in: [e0b054564f] user: jan.nijtmans branch: tip-748, size: 11959
2026-02-14
16:39
General whitespace fixes. No semantic changes. file: d4bd773723 check-in: [af2708b4ef] user: dkf branch: main, size: 11970
2025-12-05
16:18
Merge trunk. Add Tcl_AsyncMarkFromSignal to the list. Update doc file: b510623d7d check-in: [6ce6b5433c] user: jan.nijtmans branch: tip-748, size: 11960
15:41
More 'bool' usage, mainly for the notifier file: 42bc0c584b check-in: [b95ee14f1d] user: jan.nijtmans branch: main, size: 11971
2025-12-04
17:12
More signature changes to 'bool' file: 6940e52ae1 check-in: [4aeb62cdab] user: jan.nijtmans branch: tip-748, size: 11948
2025-10-10
14:11
Tranche 3 of adoption of bool file: fc75fc8e06 check-in: [6e7e183bb2] user: dkf branch: c11-bool, size: 11950
2025-10-07
14:02
Tranche 2 of adoption of bool file: 50fe287a8e check-in: [7c0638716d] user: dkf branch: c11-bool, size: 11944
2025-08-17
11:25
More bools and pieces file: 0416600d26 check-in: [28a7d957c7] user: dkf branch: c-std-update, size: 11923
2025-08-12
09:06
More booleans. file: 567acfe693 check-in: [8a9080996d] user: dkf branch: c-std-update, size: 11920
2025-08-01
11:48
More moving of variable declarations file: 5b091a6dce check-in: [1d20e4cf45] user: dkf branch: c-std-update, size: 11898
2025-06-20
13:15
Give each TSD struct its own name as well as the standard ThreadSpecificData file: dac15427c6 check-in: [8d695d0eb6] user: dkf branch: c-std-update, size: 11910
2025-03-02
15:48
Bunch of whitespace basic fixes. file: 3b2fa16791 check-in: [809d595b56] user: dkf branch: main, size: 11935
2025-01-20
14:39
Fixes for many many whitespace infelicities file: 62777647c3 check-in: [ba7d219e65] user: dkf branch: whitespace-fix, size: 11932
2024-08-28
16:33
Merge [3a60363aa10ef993]: Clean up a lot of whitespace issues. file: bbfe58bf71 check-in: [627781a6db] user: pooryorick branch: unchained, size: 12304
2024-07-20
15:59
Merge trunk [91c2f411e7e71552], TIP #636 (tip-636-tcl9-644), resolve all conflicts including those resulting from conflicting Tcl_Obj interface implementations, and relicense under GNU Affero General Public License. All tests pass. file: 59ffeb29f8 check-in: [d8a3450f12] user: pooryorick branch: unchained, size: 12305
2024-05-13
15:41
Clean up a lot of small whitespace issues This is the dullest commit ever. Sorry. file: d99e086b83 check-in: [3a60363aa1] user: dkf branch: main, size: 11932
2024-04-23
16:06
Hmm, something is broken. Leaving this here but this commit is definitely wrong somehow file: e5210a0b0c check-in: [b356268e32] user: dkf branch: tidy-indentation, size: 11931
2024-01-30
17:07
Tweaking indentation of code; really unimportant... file: ebcdeea3ec check-in: [bb72806960] user: dkf branch: dkf-indent-tweak, size: 11936
2022-10-21
08:53
Merge 8.7 file: 940d8808b5 check-in: [cd9d1f32be] user: jan.nijtmans branch: main, size: 11933
2021-08-23
14:54
Merge 8.7 file: 7200a3c679 check-in: [30412ad14a] user: jan.nijtmans branch: main, size: 11948
13:00
Make everything compile warning-free when TCL_THREADS=0 file: 5f11555d9d check-in: [2abafeca96] user: jan.nijtmans branch: core-8-branch, size: 11942
2021-08-20
13:10
Repair build failure. file: f68204d0ce check-in: [9b2d49b6dc] user: dgp branch: main, size: 11926
12:48
Merge 8.7 file: 81b0b06764 check-in: [e30f179c8f] user: jan.nijtmans branch: main, size: 11924
2021-08-18
14:31
Fix use of TCL_THREADS macro: In Tcl 8.7, this is always defined, but can have value '1' or '0' file: f8233c6e89 check-in: [ae2c9006bb] user: jan.nijtmans branch: tip-511, size: 11920
2021-08-17
16:16
tip#511 proposed implementation file: 94417597c8 check-in: [0d5d82595a] user: jan.nijtmans branch: tip-511, size: 11923
2021-02-05
13:42
More implicit type-casts, for better compatibility with C++ file: 9e81fffbc5 check-in: [93ad66cbe5] user: jan.nijtmans branch: core-8-6-branch, size: 10033
2020-12-08
15:42
Merge 8.7 file: c2f99cfb3c check-in: [71493b571b] user: jan.nijtmans branch: main, size: 10034
15:31
Add -finput-charset=UTF-8 and -fextended-identifiers to gcc (and clang). All C sources can now use UTF-8, as far as gcc/clang/msvc support it. Not used yet file: 9bfa6ea234 check-in: [4254aa305b] user: jan.nijtmans branch: core-8-branch, size: 10030
2019-06-30
09:21
Merge 8.7 file: e3387a56c9 check-in: [d3cd0345c0] user: jan.nijtmans branch: trunk, size: 10036
09:12
Eliminate "catch" as variable-name, is a keyword in C++. Also add some type-casts, making it more C++-friendly. file: f6d4bee77f check-in: [9a11ef8e2b] user: jan.nijtmans branch: core-8-branch, size: 10032
2018-09-03
09:12
merge zipfs file: 2e40448c70 check-in: [4efd0e60fa] user: jan.nijtmans branch: androwish, size: 11659
2018-09-01
22:01
Change ckalloc and friends to Tcl_Alloc and friends. Add two defines, TCL_IO_FAILURE and TCL_NO_LENGTH (experimental, still open to be renamed following discussion) file: a6f56d8773 check-in: [f13660b5a5] user: jan.nijtmans branch: memory-API, size: 10021
2018-05-31
21:24
merge zipfs file: 75d1078d01 check-in: [fc74365c13] user: jan.nijtmans branch: androwish, size: 10900
2017-01-04
23:09
don't panic when EAGAIN - if the pipe is full, we have to drop the message file: 724221838a check-in: [3f85519053] user: aspect branch: aspect-async-pipe, size: 22863
2017-01-01
13:32
Attempt to solve bug [f4f44174e4c88a91] by moving cross-thread notifications through a new thread, eliminating the use of asyncMutex in Tcl_AsyncMark. Tcl_ThreadAlert is still used though, and goes under a mutex which is exactly what we were trying to avoid. See ticket [f4f44174e4c88a91] for more details. file: a34ab415e5 check-in: [0fedee824f] user: aspect branch: aspect-async-pipe, size: 22599
2011-03-12
15:06
Adjust ckalloc/ckfree macros to greatly reduce number of explicit casts in rest of Tcl source code. No ABI change. API change *should* be harmless. file: f105c0e7ec check-in: [5574bdd262] user: dkf branch: trunk, size: 10017
2011-03-02
20:27
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them (except in zlib files). file: 61be2548c8 check-in: [c64f310d38] user: dgp branch: trunk, size: 10043
16:06
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them. file: 96b78108d5 check-in: [79367df0f0] user: dgp branch: core-8-5-branch, size: 10047
2011-03-01
15:38
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them. file: 3c6b55ee18 check-in: [90b4acd7bd] user: dgp branch: core-8-4-branch, size: 9997
2010-11-17
16:11
Next slice. file: 11b5a8c19f check-in: [e83816154d] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 10112
2009-11-19
16:51
merge updates from HEAD file: 20f47ebb72 check-in: [7aa1b44845] user: dgp branch: dgp-refactor, size: 10116
2009-11-18
21:59
Eliminate various gcc warnings (in -Wextra mode) file: 515bda8c56 check-in: [8780faf488] user: nijtmans branch: trunk, size: 10117
2009-01-09
14:17
merge updates from HEAD file: bcb2c4aa18 check-in: [02f7c5c705] user: dgp branch: dgp-refactor, size: 10117
11:21
Style fixes (unfouling whitespace, sorting comments, removing useless casts, etc.) file: 0f46ea9195 check-in: [cd3c38f00a] user: dkf branch: trunk, size: 10113
2008-11-10
02:18
merge updates from HEAD file: 8c27d206fd check-in: [4a9c1325dc] user: dgp branch: dgp-refactor, size: 10124
2008-10-26
18:34
Style improvements - invoking callbacks without visual junk. file: 7ae5f0ac72 check-in: [a1a8afc25d] user: dkf branch: trunk, size: 10120
2008-06-25
15:56
merge updates from 8.5 branch file: 22acdc3e43 check-in: [affd52009d] user: dgp branch: core-stabilizer-branch, size: 10120
2008-05-11
04:22
merge updates from HEAD file: e89078f7e4 check-in: [b084fd8e3a] user: dgp branch: dgp-refactor, size: 10127
2008-05-03
19:31
use Tcl_Panic() instead of panic() file: 54e42858a3 check-in: [2d576d5da2] user: das branch: core-8-5-branch, size: 10120
19:31
use Tcl_Panic() instead of panic() file: 5128ed4288 check-in: [f2076ab1fb] user: das branch: trunk, size: 10123
2008-04-27
08:36
Also, panic early if we find out the wrong thread attempting to delete the async handler (common trap). As, only the one that created the handler is allowed to delete it. file: c6dbf3a7f7 check-in: [c9ef4f4064] user: vasiljevic branch: trunk, size: 10122
08:26
Also, panic early if we find out the wrong thread attempting to delete the async handler (common trap). As, only the one that created the handler is allowed to delete it. file: 57d99023d7 check-in: [c26ff3625b] user: vasiljevic branch: core-8-5-branch, size: 10119
08:18
Also, panic early if we find out the wrong thread attempting to delete the async handler (common trap). As, only the one that created the handler is allowed to delete it. file: e6facd8880 check-in: [a060a75b1e] user: vasiljevic branch: core-8-4-branch, size: 10077
08:05
generic/tclAsync.c: Tcl_AsyncDelete(): panic if attempt to locate handler token fails. Happens when some other thread attempts to delete somebody else's token. file: 796ca1176b check-in: [1734fc35da] user: vasiljevic branch: core-8-5-branch, size: 10150
2008-04-26
11:53
generic/tclAsync.c: Tcl_AsyncDelete(): panic if attempt to locate handler token fails. Happens when some other thread attempts to delete somebody else's token. file: 44ace9eb9c check-in: [18f18938cc] user: vasiljevic branch: trunk, size: 9921
11:37
generic/tclAsync.c: Tcl_AsyncDelete(): panic if attempt to locate handler token fails. Happens when some other thread attempts to delete somebody else's token. file: f485c4a22b check-in: [fe045a6e86] user: vasiljevic branch: core-8-4-branch, size: 9877
2007-12-13
15:22
merge stable branch onto HEAD file: 8add5bda5f check-in: [d1f7550cd9] user: dgp branch: trunk, size: 9518
2007-11-12
20:40
merge updates from HEAD file: 0756acd1b6 check-in: [27f428842c] user: dgp branch: dgp-refactor, size: 9522
19:18
merge updates from HEAD file: 5db6890d9d check-in: [72c5ac9502] user: dgp branch: core-stabilizer-branch, size: 9522
2007-11-10
03:41
fix formatting file: 031c88ee44 check-in: [932a0524ab] user: das branch: trunk, size: 9518
2007-11-09
21:35
* generic/tclAsync.c: * generic/tclBasic.c: * generic/tclExecute.c: * generic/tclInt.h: * generic/tclUnixInit.c: * generic/tclUnixPort.h: new fields in interp (ekeko!) to cache TSD data that is accessed at each command invocation, access macros to replace Tcl_AsyncReady and TclpCheckStackSpace by much faster variants [Patch 1829248] file: a2ef230e61 check-in: [41cb112a37] user: msofer branch: trunk, size: 9521
2006-08-29
16:19
merge updates from HEAD file: 3b6ef3e09d check-in: [e1feeec3e7] user: dgp branch: dgp-refactor, size: 9394
2006-07-11
14:29
Made Tcl_AsyncDelete() more tolerant when called after all thread TSD has been garbage-collected. file: 3605ad6360 check-in: [d4201e4c4e] user: vasiljevic branch: trunk, size: 9397
13:18
Made Tcl_AsyncDelete() more tolerant when called after all thread TSD has been garbage-collected. file: 560b7f8594 check-in: [9cd2581375] user: vasiljevic branch: core-8-4-branch, size: 9487
2005-12-02
18:42
merge updates from HEAD file: a417557d1e check-in: [1059d34b2b] user: dgp branch: dgp-refactor, size: 9098
2005-11-07
15:12
ANSIfy file: bc504b21d4 check-in: [611d25e47c] user: dkf branch: trunk, size: 9093
2005-08-02
18:14
merge updates from HEAD file: 9ee107bed4 check-in: [10feab7c07] user: dgp branch: kennykb-numerics-branch, size: 9136
2005-07-26
04:11
Merge updates from HEAD file: 08c8b46066 check-in: [8351a734a6] user: dgp branch: dgp-refactor, size: 9137
2005-07-19
22:45
Getting more systematic about style file: dd48fe17a9 check-in: [f9332bdd5d] user: dkf branch: trunk, size: 9132
2004-04-09
20:57
Merge updates from HEAD file: 493de8dc0e check-in: [5b5c8133e5] user: dgp branch: dgp-refactor, size: 9163
2004-04-06
22:25
Patch 922727 committed. Implements three changes: * generic/tclInt.h: Reworked the Tcl header files into a clean * unix/tclUnixPort.h: hierarchy where tcl.h < tclPort.h < tclInt.h * win/tclWinInt.h: and every C source file should #include * win/tclWinPort.h: at most one of those files to satisfy its declaration needs. tclWinInt.h and tclWinPort.h also better organized so that tclWinPort.h includes the Windows implementation of cross-platform declarations, while tclWinInt.h makes declarations that are available on Windows only. * generic/tclBinary.c (TCL_NO_MATH): Deleted the generic/tclMath.h * generic/tclMath.h (removed): header file. The internal Tcl * macosx/Makefile (PRIVATE_HEADERS): header, tclInt.h, has a * win/tcl.dsp: #include <math.h> directly, and file external to Tcl needing libm should do the same. * win/Makefile.in (WIN_OBJS): Deleted the win/tclWinMtherr.c file. * win/makefile.bc (TCLOBJS): It's a vestige from matherr() days * win/makefile.vc (TCLOBJS): gone by. * win/tcl.dsp: * win/tclWinMtherr.c (removed): file: 01da1f2692 check-in: [2e5b18c85c] user: dgp branch: trunk, size: 9158
2001-09-01
22:53
-=[ Tcl_Async* API merge from HEAD ]=- * generic/tclInt.decls: Removed TclpAsyncMark permanently and left the hole not to upset the positions. * generic/tclDecls.h: * generic/tclIntDecls.h: * generic/tclIntPlatDecls.h: * generic/tclPlatDecls.h: * generic/tclStubInit.c: regen'd tables. * generic/tclAsync.c: Brought source to match -r1.6 on the HEAD branch. * unix/tclUnixPort.h: * mac/tclMacPort.h: removed #defines for TclpAsyncMark. * win/tclWinInit.c: Removed the TclpAsyncMark function and the thread ID saving that was going on in TclpInitPlatform(). [the old hack] * win/tclWinThread.c: TclpFinalizeCondition() and TclpFinalizeMutex() are now properly returning the old CriticalSection handle to the system. Tcl_CreateThread() is now decrementing its handle reference, so the system will recover resources when the thread closes (doh!). These changes are all already up on the HEAD. * doc/Async.3: matches HEAD. file: 1eb84aa890 check-in: [11201d88be] user: davygrvy branch: core-8-3-1-branch, size: 9189
2001-08-30
07:50
* generic/tclAsync.c: * generic/tclEvent.c: * generic/tclInt.h: Improper cleanup of asyncMutex in tclAsync.c repaired. TclFinalizeSynchronization() was trying to remove a registered mutex that was dumped earlier when the TSD it was stored in was cleared. This was only surfacing on *nix. Windows was being masked by mutexes not actually being returned to the system! That was repaired in a previous patch. Needed to add a private TclFinalizeAsync() to tclAsync.c and called from Tcl_FinalizeThread(). Pheww.. Is this done yet? [Bug: 414419] requested by Rob Ratcliff <[email protected]> file: 742b5881cc check-in: [45694540ca] user: davygrvy branch: trunk, size: 9184
2000-07-26
01:27
Thread-safe rewrite for the Tcl_Async* commands. file: 11cce837d6 check-in: [116644925e] user: davidg branch: trunk, size: 8655
1999-04-21
00:42
Deleted: Added comments for 4/19 and 4/20 check-in: [6c6fc5d7b2] user: redman branch: scriptics-tclpro-1-2-old, size: 0
1999-04-16
00:46
merged tcl 8.1 branch back into the main trunk file: 292b43485f check-in: [f3b32fb71c] user: stanton branch: trunk, size: 7448
1999-03-11
19:28
Deleted: Add documentation for Tcl_GetVersion() check-in: [940e47cf48] user: redman branch: scriptics-tclpro-1-2, size: 0
01:50
* generic/tcl.h: * generic/tcl.decls: Changed Tcl_ReleaseType from an enum to macros so it can be used in .rc files. Added Tcl_GetString. * mac/tclMacNotify.c: * generic/tclNotify.c: * generic/tclInt.h: * win/tclWinNotify.c: * generic/tcl.h: Renamed Tcl_AlertNotifier to TclpAlertNotifier. * generic/tclInt.decls: Added TclWinAddProcess to make it possible for expect to use Tcl_WaitForPid(). This patch is from Gordon Chaffee. * mac/tclMacPort.h: * win/tclWinInit.c: * unix/tclUnixPort.h: * generic/tclAsync.c: Added TclpAsyncMark to fix bug in async handling on Windows where async events don't wake up the event loop. This patch comes from Gordon Chaffee. * generic/tcl.decls: Fixed declarations of reserved slots. file: 0eeb2a5ac4 check-in: [37d1a96b18] user: stanton branch: core-8-1-branch-old, size: 7452
00:19
* win/tclWinPipe.c: * generic/tclInt.decls: Added TclWinAddProcess to make it possible for expect to use Tcl_WaitForPid(). This patch is from Gordon Chaffee. * mac/tclMacPort.h: * win/tclWinInit.c: * unix/tclUnixPort.h: * generic/tclAsync.c: Added TclpAsyncMark to fix bug in async handling on Windows where async events don't wake up the event loop. This patch comes from Gordon Chaffee. * generic/tcl.decls: Fixed declarations of reserved slots. file: c349b3a615 check-in: [a03165d017] user: stanton branch: trunk, size: 7014
1998-12-12
01:36
Minor change to Lock Declarations to use TCL_DECLARE_MUTEX macro, published in tcl.h. file: 823f0af27c check-in: [c778c9ef5e] user: lfb branch: core-8-1-branch-old, size: 7404
1998-12-10
21:21
* Fixed lots of files that used TCL_THREAD instead of TCL_THREADS. * generic/tclEncoding.c (Tcl_FreeEncoding): Moved most of the code into a static FreeEncoding routine that does not grab the encodingMutex to avoid deadlocks/races when called from other routines that already have the mutex. file: 322f531c07 check-in: [09f356baa2] user: stanton branch: core-8-1-branch-old, size: 7424
1998-11-11
04:54
lots of lint wrapped mutex declarations in ifdefs to avoid compiler warnings file: 28dc89464c check-in: [9535a849c1] user: stanton branch: core-8-1-branch-old, size: 7423
1998-09-24
23:58
merging changes from 8.0.3 into 8.1a2 file: a4709e7340 check-in: [1c3c1ab19f] user: stanton branch: core-8-1-branch-old, size: 7397
1998-09-21
23:39
Added contents of Tcl 8.1a2 file: 105cab926c check-in: [8c56dc8868] user: stanton branch: core-8-1-branch-old, size: 7371
1998-09-14
18:39
Replaced SCCS strings, fixed binary files file: e704aeaa80 check-in: [196f92fd17] user: stanton branch: trunk, size: 6970
1998-03-26
14:45
Added: Initial revision file: bd62a29522 check-in: [cacdd0f329] user: rjohnson branch: trunk, size: 6948