Tcl Source Code

All files named "win/tclWinThrd.c"
Login

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

History for win/tclWinThrd.c

2024-04-29
07:12
Missing TCL_NORETURN for Tcl_ExitThread() (and TclpThreadExit()). Backported from 8.7/9.0. file: [e77424f901] check-in: [5103ed9db2] user: jan.nijtmans branch: core-8-6-branch, size: 26337
2024-04-25
09:41
Make it more clear that TclpThreadExit() and Tcl_ExitThread() are TCL_NORETURN too file: [82f4c6945a] check-in: [542ee37b9a] user: jan.nijtmans branch: main, size: 26147
09:40
Make it more clear that TclpThreadExit() and Tcl_ExitThread() are TCL_NORETURN too. file: [6f79596427] check-in: [3483b63d35] user: jan.nijtmans branch: core-8-branch, size: 26140
2024-04-23
16:06
Hmm, something is broken. Leaving this here but this commit is definitely wrong somehow file: [45e18da877] check-in: [b356268e32] user: dkf branch: tidy-indentation, size: 26090
2024-04-18
15:06
Tidy up some indentation and other little code style issues file: [9f34d12080] check-in: [cb11914788] user: dkf branch: tidy-indentation, size: 26094
2024-03-20
13:14
(backport) more spacing/formatting tweaks. For now, macosx/unix/win only. file: [2c6b87b444] check-in: [dc8a99efff] user: jan.nijtmans branch: core-8-branch, size: 26127
2024-03-19
17:09
more spacing/formatting tweaks file: [1bf0a133c0] check-in: [9a59cf8499] user: dkf branch: main, size: 26134
2024-03-08
11:33
Merge 8.7 file: [954f15c389] check-in: [ac8df9b856] user: jan.nijtmans branch: main, size: 26136
11:31
typo's file: [03813ab89d] check-in: [25dca7779a] user: jan.nijtmans branch: core-8-branch, size: 26146
2024-01-30
17:07
Tweaking indentation of code; really unimportant... file: [49f12479ae] check-in: [bb72806960] user: dkf branch: dkf-indent-tweak, size: 26143
2023-10-10
19:40
Merge 8.7 file: [ca4a0990a5] check-in: [f1543f19f8] user: jan.nijtmans branch: main, size: 26134
2023-05-23
16:15
Merge 8.7 file: [2556adac96] check-in: [c5dc388878] user: jan.nijtmans branch: main, size: 26141
16:03
Give Tcl_CreateThread a TCL_HASH_TYPE (unsigned) stackSize parameter file: [96f2d50f6b] check-in: [232fb6c5c5] user: jan.nijtmans branch: core-8-branch, size: 26144
2023-05-03
16:12
Merge 9.0. Further Makefile tweaks file: [7dcddb4736] check-in: [9c9f39bc30] user: jan.nijtmans branch: windows-thread-join, size: 26366
2023-04-12
14:25
Correct spelling errors in comments and documentation, but also a non-comment corrections in history.tcl and tcltest.test. file: [8394d35466] check-in: [d65da06a77] user: pooryorick branch: main, size: 26145
13:30
Correct spelling errors in comments and documentation, but also a non-comment corrections in history.tcl and tcltest.test. file: [ee5be05744] check-in: [aca8de0aeb] user: pooryorick branch: core-8-branch, size: 26126
09:35
Correct spelling errors in comments and documentation, but also non-comment corrections in history.tcl and tcltest.test. file: [44728fbfc7] check-in: [ee3df4e647] user: pooryorick branch: core-8-6-branch, size: 26340
2023-04-04
20:50
more progress file: [6f7eec06b8] check-in: [4e36871191] user: jan.nijtmans branch: optional-signed-size, size: 26192
2023-04-02
08:45
Replaced non-thread-safe re-initialization checks with the Win32 INIT_ONCE one-time initialization API file: [6af9f4ec0f] check-in: [8360452e48] user: konrad.schwarz branch: windows-thread-join, size: 23057
2023-04-01
23:01
Use native Win32 ConditionVariables

Replaces the home-grown condition variable implementation with Win32 ConditionVariables, as introduced in Windows Vista. file: [dac8fbed34] check-in: [25e4039e84] user: mchn1350 branch: windows-thread-join, size: 22615

2023-03-30
15:19
Fix [0cb3554903]: macOS 13 SDK deprecates sprintf(). But better not use it on other platforms either. file: [68853d9d84] check-in: [ec56f33813] user: jan.nijtmans branch: bug-0cb3554903, size: 26340
2023-03-29
09:02
added copyright note file: [d24a03b10a] check-in: [7597fe65cc] user: konrad.schwarz branch: windows-thread-join, size: 28818
2023-03-28
18:58
On Windows, join threads using Win32 HANDLEs.

This works by extending the existing WinThread structure with the thread's HANDLE. The lifetime of the WinThread structure is until the thread terminates, for non-joinable threads, or until the thread is joined. For joinable threadsd, the thread's HANDLE remains open; Windows signals the HANDLE when the thread terminates. The thread's return value is transported using the standard Windows mechanism.

A new thread-specific variable is introduced so a thread can find its WinThread structure. Initial threads (those not created via Tcl_CreateThread) receive a WinThread lazily, when Tcl_GetCurrentThread is called for the first time.

Instead of using the Windows ThreadId as the Tcl threadId, the address of the WinThread is used. The least significant bit of the pointer value is used to distinguish joinable threads from non-joinable threads. (For future use or debugging, the Windows ThreadId is stored in the WinThread structure as well.)

generic/tclThreadJoin.c is made redudant by this patch. file: [2d488019ca] check-in: [231c699c87] user: mchn1350 branch: windows-thread-join, size: 28782

2023-03-08
15:01
More -Wconversion warning fixes file: [36fda600c1] check-in: [837dbec7cc] user: jan.nijtmans branch: main, size: 26145
2023-03-05
20:46
Merge 9.0 file: [6222526f48] check-in: [fef53bf657] user: jan.nijtmans branch: tip-626, size: 26123
2022-03-29
13:41
Merge 8.7 file: [b99fe0ead2] check-in: [29f2111bc0] user: jan.nijtmans branch: main, size: 26138
13:40
Don't bother UINT2PTR, since INT2PTR is just as good. file: [b61db8e55d] check-in: [94e9d6ea9b] user: jan.nijtmans branch: core-8-branch, size: 26126
2021-09-21
08:36
Experiment: Make Tcl_Time a long long in stead of a struct file: [f279ab07fb] check-in: [7d007b4694] user: jan.nijtmans branch: tcl-time-64bit, size: 26110
2021-04-17
23:26
Use C enums instead of clusters of #defines file: [2da3dad6e7] check-in: [9cc837d642] user: dkf branch: enum, size: 26083
2021-04-07
16:47
Use a lot more enums and inline funcs instead of macros; behaviour is more predictable. file: [0a6bd801c6] check-in: [03219f19f4] user: dkf branch: enum-and-inline, size: 26070
2021-01-08
21:07
Merge 8.7 (resolve conflicts) file: [9b7d496e77] check-in: [5295f674c1] user: dgp branch: main, size: 26137
2021-01-07
13:42
Merge 8.7. Don't bother BorlandC, LCC and WatcomC any more, since they (probably) cannot handle Windows 7 API anyway. file: [68b71467e2] check-in: [7d0cf14313] user: jan.nijtmans branch: tip-592, size: 26125
2020-12-08
15:42
Merge 8.7 file: [09c68d1c15] check-in: [71493b571b] user: jan.nijtmans branch: main, size: 26187
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: [173977179f] check-in: [4254aa305b] user: jan.nijtmans branch: core-8-branch, size: 26175
2020-07-21
07:54
Merge 8.7 file: [72404449d3] check-in: [b23af47e56] user: jan.nijtmans branch: trunk, size: 26199
2020-07-20
14:58
Merge 8.6 file: [9c7f0672bf] check-in: [2f045a43d6] user: jan.nijtmans branch: core-8-branch, size: 26187
14:25
Use "Global" in stead of "Master" internally, where "Master" is not used in the Master-Slave paradigm and where this makes sense. file: [16820bdbc4] check-in: [9fbbf06bfc] user: jan.nijtmans branch: core-8-6-branch, size: 26247
2020-07-13
14:24
More WIP file: [12d4fc25da] check-in: [38b4e0ed91] user: jan.nijtmans branch: no-master-slave, size: 26181
12:03
(Experiment): What happens if we purge all usages of Master/Slave from Tcl. Highly experimental, not meant for Tcl 8.6.11! file: [1e51d4c09b] check-in: [f9ba684c6b] user: jan.nijtmans branch: no-master-slave, size: 26191
2020-02-28
12:46
Merge 8.7 file: [140e828541] check-in: [b7af922d61] user: jan.nijtmans branch: trunk, size: 26199
2019-09-19
18:27
Merge 8.7 file: [aebd73eadc] check-in: [f6491a4282] user: jan.nijtmans branch: cplusplus, size: 26187
15:36
Merge 8.7 file: [27daa635c0] check-in: [8c85c9ded5] user: jan.nijtmans branch: trunk, size: 26113
15:24
Merge 8.6 file: [0ea2a7e79f] check-in: [6b92f77a0a] user: jan.nijtmans branch: core-8-branch, size: 26101
11:36
Don't build the Tcl library in Unicode mode any more. Just tclAppInit.c (and cat32 on Windows) file: [c2c960a07b] check-in: [31d001f4a3] user: jan.nijtmans branch: implicit-unicode, size: 26245
2019-08-02
12:15
Merge 8.7. Continue implementation for win32 file: [de3c00826d] check-in: [ff6fa30271] user: jan.nijtmans branch: cplusplus, size: 26186
2018-09-03
09:12
merge zipfs file: [bf5b684e5c] check-in: [4efd0e60fa] user: jan.nijtmans branch: androwish, size: 26243
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: [b09ca6221e] check-in: [f13660b5a5] user: jan.nijtmans branch: memory-API, size: 26112
2018-07-02
19:39
Use size_t in more API's, e.g. *RegExp* types file: [8e9ca05b5b] check-in: [a494b98da4] user: jan.nijtmans branch: memory-API, size: 26100
2018-06-27
19:09
merge trunk file: [793dd364aa] check-in: [2cc2d71f0a] user: jan.nijtmans branch: memory-API, size: 26097
2018-06-25
20:38
merge 8.6 file: [d55e71eaa1] check-in: [1c67775fe7] user: jan.nijtmans branch: core-8-branch, size: 26100
07:22
Simplify ToUtf(), expecially for TCL_UTF_MAX>3 (with correct surrogate handling). Fix various typo's file: [5e4e649b35] check-in: [257ff5d1b3] user: jan.nijtmans branch: core-8-6-branch, size: 26244
2018-05-23
19:41
merge trunk file: [62c80c73c3] check-in: [c78f328143] user: jan.nijtmans branch: novem, size: 26093
2018-05-22
20:53
Simplify usage of TCL_THREAD, along the lines of [eeddb0693a]. Suggested by DKF file: [21ec6f3189] check-in: [bf06e36b25] user: jan.nijtmans branch: core-8-branch, size: 26096
2018-05-17
18:53
TIP #491 implementation: Threading Support: phasing out non-threaded builds file: [4ae4cf6f3f] check-in: [e9ee6fc387] user: jan.nijtmans branch: core-8-branch, size: 26221
2017-05-03
10:19
[win] Introduces new threaded declarations TclWinThreadCreate/TclWinThreadExit: because of usage of CRT and/or TLS (if threaded) - use the _beginthreadex/_endthreadex functions for thread management rather than CreateThread/ExitThread. Prevents sporadic run-time errors, like R6016 (not enough space for thread data). See section "Remarks" in https://msdn.microsoft.com/en-us/library/windows/desktop/ms682453(v=vs.85).aspx file: [8fcee19436] check-in: [44defcb5cf] user: sebres branch: core-8-5-branch-fix-1997007, size: 24854
2016-12-01
11:20
More internal use of size_t. Eliminate unused "isBin" argument from TclpSysAlloc() file: [52c63c79b0] check-in: [9d4cd6b1aa] user: jan.nijtmans branch: novem, size: 26108
2016-11-16
11:17
merge trunk file: [c93a932e95] check-in: [31a3f9bee0] user: jan.nijtmans branch: novem, size: 26111
10:55
Use more "size_t" in stead of "int" internall. Also eliminate a lot of type-casts which are not necessary any more. file: [f6d26f184e] check-in: [521d320b7b] user: jan.nijtmans branch: trunk, size: 26131
2016-11-02
12:16
merge zipfs file: [1c228aff86] check-in: [0d7d946d30] user: jan.nijtmans branch: androwish, size: 26239
2016-10-11
21:53
merge trunk file: [14f033f4ef] check-in: [d5f3db4df2] user: jan.nijtmans branch: novem, size: 26119
21:52
Fix [3cc1d91345]: duplicate calls to TclpFreeAllocCache() on thread exists file: [3521af7b3f] check-in: [bbfcd2c669] user: jan.nijtmans branch: trunk, size: 26139
21:43
Fix [3cc1d91345]: duplicate calls to TclpFreeAllocCache() on thread exists file: [0ad76d87da] check-in: [7a3c8a4b0d] user: jan.nijtmans branch: core-8-6-branch, size: 26240
2016-08-19
12:45
merge zipfs file: [6157538a1c] check-in: [63eab9444d] user: jan.nijtmans branch: androwish, size: 26139
2016-06-30
13:53
Merge trunk file: [a959415e1b] check-in: [76c4e1f025] user: jan.nijtmans branch: novem, size: 26019
13:16
Simplify use of "struct" keyword in many places. file: [fd55f59d86] check-in: [2e6ea5716f] user: jan.nijtmans branch: trunk, size: 26039
2016-06-23
12:10
Merge zipfs file: [637526167a] check-in: [b992a9cd7f] user: jan.nijtmans branch: androwish, size: 26137
2016-06-14
10:01
merge trunk file: [016ed636c3] check-in: [ea4e5ac031] user: jan.nijtmans branch: novem, size: 26029
09:58
Fix [7393be0be6]: Tcl Thread library doesn't work in Debug build on Windows_x64 file: [2b5f3ba40a] check-in: [5aad54f649] user: jan.nijtmans branch: trunk, size: 26087
09:57
Fix [7393be0be6]: Tcl Thread library doesn't work in Debug build on Windows_x64 file: [23a926cc46] check-in: [5ed3db2343] user: jan.nijtmans branch: core-8-6-branch, size: 26140
09:55
Fix [7393be0be6]: Tcl Thread library doesn't work in Debug build on Windows_x64 file: [ab6ed7ff2f] check-in: [37a9ecdea2] user: jan.nijtmans branch: core-8-5-branch, size: 25371
2016-04-01
13:09
Merge trunk. Remove excess spacing. file: [e26cb3d969] check-in: [d48b5dfaf7] user: jan.nijtmans branch: novem, size: 26084
13:06
RFE [0ef5e653]: Add nsf to coffbase.txt. Eliminate exess spacing file: [33889db3bf] check-in: [976ec94ceb] user: jan.nijtmans branch: trunk, size: 26142
12:00
merge trunk file: [41df758be0] check-in: [925fddfb82] user: jan.nijtmans branch: novem, size: 26092
11:56
Two micro-optimizations in Win and UNIX notifier. See: http://code.activestate.com/lists/tcl-core/15645/ file: [9d2f27cb5d] check-in: [b1a8aa4406] user: jan.nijtmans branch: trunk, size: 26150
2016-03-25
14:41
- Undo unix notifier changes: too risky at this moment. - Merge trunk - (cherry-pick from dhr-micro-optimization): Micro-optimization: remove double checked lock from TclGetAllocCache in favour of initialization in TclInitSubsystems file: [537839f181] check-in: [0f401c5c64] user: jan.nijtmans branch: notifier, size: 26151
2016-03-21
12:10
merge trunk file: [6ee517e463] check-in: [960c5239bf] user: jan.nijtmans branch: novem, size: 26134
11:59
Fix [d3071887dbc7aeac]: Fix SEGV in Tcl_FinalizeNotifier(). Thanks to hirofumi for both the bug-report and the fix. Use TclpMasterLock() in stead of MASTER_LOCK everywhere (in stead of in some files only, not in others). Use "static int initialized" variable consistantly. Fix some comments. No change of functionality. file: [3769388b8b] check-in: [a8ea065823] user: jan.nijtmans branch: trunk, size: 26192
2015-10-22
14:07
fix typo in micro-optimization TclpInitThreadAlloc file: [58f7016d62] check-in: [1b71628a42] user: kbk branch: drh-micro-optimization, size: 26154
2015-10-21
23:30
Micro-optimization: remove double checked lock from TclGetAllocCache in favour of initialization in TclInitSubsystems file: [edb9ab7e13] check-in: [fdbf64dc50] user: kbk branch: drh-micro-optimization, size: 26153
20:18
Further cleanup and enhancements. file: [050fe86bdb] check-in: [e53cd46a2a] user: mistachkin branch: bug-57945b574a, size: 29221
19:11
Add experimental Tcl_SetMutexWaitProc public API. file: [76f260c934] check-in: [74d995560a] user: mistachkin branch: bug-57945b574a, size: 28502
2015-09-28
10:58
Don't use mutex retry mechanism on Android. (problems ???) file: [befa27a974] check-in: [218071d627] user: jan.nijtmans branch: androwish, size: 26248
2015-09-25
17:12
merge trunk file: [3fa8bbd482] check-in: [e2fac8a6f7] user: jan.nijtmans branch: novem, size: 26987
2015-09-24
10:54
Fix [5d170b5ca5]: checkin 9f8b7bea5344f1b0 broke netbsd's thread notifier file: [dc04405b2f] check-in: [f30afc36b5] user: jan.nijtmans branch: core-8-5-branch, size: 26276
2015-08-28
01:10
Further refinements. file: [6a364f5dc7] check-in: [f31817e841] user: mistachkin branch: bug-57945b574a, size: 28328
00:46
Experimental changes to reduce lock contention during fork(). file: [2b70003109] check-in: [a989ec9aa1] user: mistachkin branch: bug-57945b574a, size: 27800
2015-08-19
11:26
merge trunk. Remove now unused internal functions. file: [bb3d989f2d] check-in: [afefb60708] user: jan.nijtmans branch: bug-5d170b5ca5, size: 27045
2015-07-29
14:56
merge trunk file: [70959fde16] check-in: [2fe99beec9] user: dgp branch: novem, size: 27702
2015-07-23
16:53
Fix bug [57945b574a]: lock in forking process under heavy multithreading. Thanks to Joe Mistachkin for the implementation of the fix, and Gustaf Neumann for the original report and testing the fix. file: [d792d63460] check-in: [6abeca2800] user: jan.nijtmans branch: core-8-5-branch, size: 26991
2015-05-17
22:13
This should completely fix the race conditions at the cost of more complexity. Also, on Unix, a more reliable means than Tcl_Sleep() of sleeping for a short time is needed. file: [27f8c09a88] check-in: [dcdbdb965a] user: mistachkin branch: bug-57945b574a, size: 27760
20:10
Fix deadlock. file: [4585f923b2] check-in: [0b7a654181] user: mistachkin branch: bug-57945b574a, size: 27371
18:03
Draft fix for a potential race condition in the new Tcl_MutexUnlockAndFinalize API. Not yet tested. file: [01cb4fb3bf] check-in: [53d99af757] user: mistachkin branch: bug-57945b574a, size: 27371
2013-10-28
21:45
Try resetting all the 'one time' locks as well. file: [a3719c83eb] check-in: [4ae506f66c] user: mistachkin branch: tkt-414d10346b, size: 25889
2013-09-26
13:13
merge novem

WARNING: No checks of build-ability done yet. file: [df2e5eef06] check-in: [2688d65077] user: dkf branch: novem-64bit-sizes, size: 26129

2013-09-10
18:46
[547989] Proposed implementation of the change described in the comments of the bug report. file: [2c83b9316c] check-in: [942397a2a7] user: dkf branch: bug-547989, size: 26195
2013-02-10
13:26
Unbreak msvc builds, by depending on tclPort.h for inclusion of <sys/stat.h> file: [39b6c307d2] check-in: [4ef9e63656] user: jan.nijtmans branch: trunk, size: 26195
2013-01-19
18:28
merge trunk file: [975e6360c6] check-in: [f7a92b1cbd] user: jan.nijtmans branch: novem, size: 26137
2012-12-25
12:09
proposed fix for Bug 3598300 file: [0ae0b0fd59] check-in: [02a51cbb69] user: jan.nijtmans branch: bug-3598300, size: 25426
2012-12-21
10:13
remove unnecessary struct names, which only pollute the "struct" namespace for the compiler. file: [86a15429f3] check-in: [7752ee08e3] user: jan.nijtmans branch: novem, size: 26179
2012-11-16
14:15
More work done. Still I am finding places where int should be size_t and reverse. file: [c4a29f61ee] check-in: [d348e679f7] user: jan.nijtmans branch: novem-64bit-sizes, size: 26209
2012-11-14
09:12
Workaround for mingw versions which don't provide _fpcontrol in float.h file: [0c01277a1e] check-in: [73042d17c8] user: jan.nijtmans branch: trunk, size: 26217
09:11
Workaround for mingw versions which don't provide _fpcontrol in float.h file: [e03746ae8b] check-in: [f93feee5b5] user: jan.nijtmans branch: core-8-5-branch, size: 25448
09:07
Workaround for mingw versions which don't provide _fpcontrol in float.h file: [9cd1ce57cb] check-in: [4a2030278d] user: jan.nijtmans branch: core-8-4-branch, size: 30610
2012-11-13
21:23
360894 Threads inherit floating point config from their creator thread file: [990d45f425] check-in: [3574448bf4] user: dgp branch: trunk, size: 25896
21:22
360894 Threads inherit floating point config from their creator thread. file: [b95577ae6d] check-in: [5e4a7a9ee2] user: dgp branch: core-8-5-branch, size: 25127
2012-09-13
20:03
Make compilation of the fp control changes possible with MinGW. file: [8f350b1fe3] check-in: [0bc6042f01] user: mistachkin branch: bug-3567063, size: 30289
18:37
Free the WinThread structure before running the original thread procedure. file: [f2413d2948] check-in: [52c42b36eb] user: mistachkin branch: bug-3567063, size: 30159
18:30
Initial work on SF FRQ #3567063. file: [9285e07eb1] check-in: [e5555c6455] user: mistachkin branch: bug-3567063, size: 29964
2012-08-20
06:49
remove unnecessary struct names, which only pollute the "struct" namespace for te compiler. file: [928322c1cb] check-in: [db442914c7] user: jan.nijtmans branch: jn-no-struct-names, size: 24075
2011-08-16
12:03
[Bug 3388350] mingw64 compiler warnings file: [063ad4f012] check-in: [8c851aad1d] user: jan.nijtmans branch: core-8-5-branch, size: 23344
2011-03-14
14:41
merge trunk + update ckfree() and ckalloc() calls file: [8d540eaa47] check-in: [4ddd1c56f7] user: dgp branch: dgp-refactor, size: 24106
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: [1829d0fad8] check-in: [5574bdd262] user: dkf branch: trunk, size: 24113
2011-03-03
17:14
merge trunk file: [af9aeb440a] check-in: [affd89e3ef] user: dgp branch: dgp-refactor, size: 24162
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: [5dcef4c2ad] check-in: [c64f310d38] user: dgp branch: trunk, size: 24169
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: [26036a070c] check-in: [79367df0f0] user: dgp branch: core-8-5-branch, size: 23335
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: [861db49f2c] check-in: [90b4acd7bd] user: dgp branch: core-8-4-branch, size: 28504
2011-01-25
22:33
Fix various gcc-4.5.2 64-bit warning messages, e.g. by using full 64-bits for socket fd's file: [6076f0db34] check-in: [92caef797a] user: nijtmans branch: trunk, size: 24245
2010-11-23
14:27
Jumps of win/ files. Fixed missing patches to configure. Jumped configure.in and tcl.m4. Also @578 file: [daaf1c45e9] check-in: [1c930c462b] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 24240
2010-11-22
16:07
Next @380. OO Stacktraces broken. file: [b4c5e6fea4] check-in: [1713113dd4] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 24234
2010-11-18
17:15
Next, @134 file: [b40d3644cd] check-in: [7fc03e57d1] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 24101
14:20
Onward. file: [5e7ccec030] check-in: [fcf1f73ec6] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 24108
2010-09-17
12:55
Merge from HEAD to rmax-ipv6-branch file: [533b881463] check-in: [70c6ac9692] user: rmax branch: rmax-ipv6-branch, size: 24238
2010-06-16
16:17
merge file: [df0b4da22c] check-in: [7f6e340d45] user: dgp branch: dgp-refactor, size: 24238
14:49
Simplify Tcl_AppInit and *_Init definitions. Change TclpThreadCreate and Tcl_CreateThread signature, making clear that "proc" is a function pointer, as in all other "proc" function parameters. file: [5a8cbc9a40] check-in: [8567ee888a] user: nijtmans branch: trunk, size: 24238
2010-01-31
23:51
Various CYGWIN-related fixes backported from HEAD. Still configure script not modified, so CYGWIN build is still disabled. Reason: although the build succeeds with those changes, many tests still fail. file: [752f6bb79d] check-in: [ad7cfb6ee3] user: nijtmans branch: core-8-5-branch, size: 23415
2010-01-13
18:47
merge updates from HEAD file: [0db8e1125a] check-in: [e6c6ee7ccf] user: dgp branch: dgp-refactor, size: 24237
06:46
Fix TCL_LL_MODIFIER for Cygwin and various other minor CYGWIN compilation problems file: [5e68d293fb] check-in: [2be0f4173b] user: nijtmans branch: trunk, size: 24237
2010-01-10
22:58
* win/tclWinDde.c: VC++ 6.0 doesn't have * win/tclWinReg.c PDWORD_PTR * win/tclWinThrd.c: Fix various minor gcc warnings. * win/tclWinTime.c * win/tclWinConsole.c Put channel type definitions * win/tclWinChan.c in static const memory * win/tclWinPipe.c * win/tclWinSerial.c * win/tclWinSock.c * generic/tclIOGT.c * generic/tclIORChan.c * generic/tclIORTrans.c * unix/tclUnixChan.c * unix/tclUnixPipe.c * unix/tclUnixSock.c * unix/configure (regenerated with autoconf 2.59) * tests/info.test: Make test independant from tcltest implementation.
file: [f967470801] check-in: [ab99980096] user: nijtmans branch: trunk, size: 24272
2009-01-09
14:17
merge updates from HEAD file: [ffbf6143b2] check-in: [02f7c5c705] user: dgp branch: dgp-refactor, size: 24242
11:21
Style fixes (unfouling whitespace, sorting comments, removing useless casts, etc.) file: [99ba9ff66d] check-in: [cd3c38f00a] user: dkf branch: trunk, size: 24237
2008-12-21
20:13
* changes: Update for 8.5.6 release.
* library/tclIndex: Removed reference to no-longer-extant procedure 'tclLdAout'. * doc/library.n: Corrected mention of 'auto_exec' to 'auto_execok'. [Patch 2114900] thanks to Stu Cassoff <[email protected]> Backport of 2008-11-26 commit from Kevin Kenny.
* win/tclWinThrd.c (TclpThreadCreate): We need to initialize the thread id variable to 0 as on 64 bit windows this is a pointer sized field while windows only fills it with a 32 bit value. The result is an inability to join the threads as the ids cannot be matched. Backport of 2008-10-13 commit from Pat Thoyts.
file: [352990f0b0] check-in: [b37bbeae84] user: dgp branch: core-8-5-branch, size: 23391
2008-10-14
20:10
merge updates from HEAD file: [e555c04ea1] check-in: [b58f473a75] user: dgp branch: dgp-refactor, size: 24232
2008-10-13
22:51
We need to initialize the thread id variable to 0 as on 64 bit windows this is a pointer sized field while windows only fills it with a 32 bit value. The result is an inability to join the threads as the ids cannot be matched. file: [b4db2a753e] check-in: [8f717ed738] user: patthoyts branch: trunk, size: 24233
2008-07-29
20:13
merge updates from (near) HEAD file: [0c6a5279a6] check-in: [f51e3a3c72] user: dgp branch: dgp-refactor, size: 24099
2008-07-24
21:54
CONSTified 4 functions in the Notifier which all have a Tcl_Time* in it which is supposed to be a constant, but this was not reflected in the API: Tcl_SetTimer Tcl_WaitForEvent Tcl_ConditionWait Tcl_SetMaxBlockTime Introduced a CONST86, so extensions which have their own Notifier (are there any?) can be modified to compile against both Tcl 8.5 and Tcl 8.6. This change complies with TIP #24 file: [bca7125568] check-in: [7ade6e690e] user: nijtmans branch: trunk, size: 24099
2008-07-16
23:31
* win/tclWinThrd.c: Test for TLS_OUT_OF_INDEXES to make certain that thread key creation is successful. file: [3b339424fc] check-in: [fc0e0a02ad] user: georgeps branch: trunk, size: 24106
2008-06-16
03:17
merge updates from HEAD file: [4dc412c268] check-in: [1f1de75ebf] user: dgp branch: dgp-refactor, size: 24006
2008-06-13
05:45
TIP 285 Implementation file: [deec76c14a] check-in: [505c316922] user: mistachkin branch: trunk, size: 24008
2008-05-11
04:22
merge updates from HEAD file: [a9da7ed6a9] check-in: [b084fd8e3a] user: dgp branch: dgp-refactor, size: 23998
2008-05-09
04:58
* generic/tcl.h: Make Tcl_ThreadDataKey a void *. * generic/tclInt.h: Change around some function names and add some new per-platform declarations for thread-specific data functions. * generic/tclThread.c: Make use of of the new function names that no longer have a Tclp prefix. * generic/tclThreadStorage.c: Replace the core thread-specific data (TSD) mechanism with an array offset solution that eliminates the hash tables, and only uses one slot of native TSD. Many thanks to Kevin B. Kenny for his help with this.
* unix/tclUnixThrd.c: Add platform-specific TSD functions for use by tclThreadStorage.c. * win/tclWinThrd.c: Add platform-specific TSD functions for use by tclThreadStorage.c.
file: [83af41b594] check-in: [2fd77728e6] user: georgeps branch: trunk, size: 23998
2008-04-27
22:21
Get rid of pre-C89-isms (esp. CONST vs const). file: [83c1b16d3c] check-in: [2d205c22fb] user: dkf branch: trunk, size: 23268
2007-04-08
14:58
Merge updates from HEAD; may not build file: [57462559d1] check-in: [8dc7079178] user: dgp branch: dgp-refactor, size: 23273
2007-03-24
09:33
Thread exit handler marks the current thread as un-initialized. This allows exit handlers that are registered later to re-initialize this subsystem in case they need to use some sync primitives (cond variables) from this file again. file: [e7754c452e] check-in: [e92e02a7fa] user: vasiljevic branch: trunk, size: 23275
09:31
Thread exit handler marks the current thread as un-initialized. This allows exit handlers that are registered later to re-initialize this subsystem in case they need to use some sync primitives (cond variables) from this file again. file: [e0aa9836b2] check-in: [76f247737e] user: vasiljevic branch: core-8-4-branch, size: 28587
2006-08-29
16:19
merge updates from HEAD file: [4074064958] check-in: [e1feeec3e7] user: dgp branch: dgp-refactor, size: 23429
2006-08-10
12:15
Various minor object file size efficiency fixes. [Bug 1530474] file: [fd4f27d71a] check-in: [a09967381c] user: dkf branch: trunk, size: 23424
2005-12-02
18:42
merge updates from HEAD file: [a77a68f403] check-in: [1059d34b2b] user: dgp branch: dgp-refactor, size: 23433
2005-11-04
00:06
ANSIfy file: [5e90da3844] check-in: [eeb132b4ae] user: dkf branch: trunk, size: 23428
2005-08-15
18:13
merge updates from HEAD file: [1387a31802] check-in: [b456e92317] user: dgp branch: kennykb-numerics-branch, size: 23540
17:23
merge updates from HEAD file: [e8d4c32f2d] check-in: [074d06ccf4] user: dgp branch: dgp-refactor, size: 23540
2005-08-11
22:06
radical refactoring of thread storage to untangle dependencies file: [e6d30cb6b7] check-in: [be83fe62c8] user: kennykb branch: trunk, size: 23540
2005-08-02
18:14
merge updates from HEAD file: [5ecd7176fc] check-in: [10feab7c07] user: dgp branch: kennykb-numerics-branch, size: 28530
2005-07-26
04:11
Merge updates from HEAD file: [dd96b06449] check-in: [8351a734a6] user: dgp branch: dgp-refactor, size: 28530
2005-07-24
22:56
Getting more systematic about style file: [56c7807993] check-in: [83d72c558c] user: dkf branch: trunk, size: 28526
2005-07-12
20:35
merged changes from HEAD file: [84e77c4942] check-in: [5316ea45e0] user: kennykb branch: kennykb-numerics-branch, size: 28871
2005-06-13
01:45
*** MERGE WITH HEAD *** (tag msofer-wcodes-20050611)
file: [cda33329e7] check-in: [d666b09ed5] user: msofer branch: msofer-wcodes-branch, size: 28870
2005-06-02
04:17
merge updates from HEAD file: [18eb60c992] check-in: [0d4fa0e558] user: dgp branch: dgp-refactor, size: 28867
2005-05-30
07:56
Fixed Tcl Bug #1204064. file: [5b31f7f001] check-in: [b189cce3c3] user: vasiljevic branch: trunk, size: 28870
01:36
* win/tclWinThrd.c (TclpFinalizeThreadData): move tlsKey defn to top of file and clarify name (was 'key'). [Bug 1204064]
file: [d9fe76d3fe] check-in: [df1e9f6aac] user: hobbs branch: core-8-4-branch, size: 28737
2005-05-11
16:58
merge updates from HEAD file: [d697355cab] check-in: [a8212110f1] user: dgp branch: dgp-refactor, size: 28847
2005-05-10
18:33
Merged kennykb-numerics-branch back to the head; TIPs 132 and 232 file: [808a27fe64] check-in: [1cc2336920] user: kennykb branch: trunk, size: 28847
16:11
Merged changes from HEAD file: [d0677550b0] check-in: [bae9c0a530] user: kennykb branch: kennykb-numerics-branch, size: 28851
2005-05-05
17:55
Merged with HEAD file: [0ce94284cf] check-in: [b77c9a87c6] user: kennykb branch: kennykb-numerics-branch, size: 28852
17:52
Corrected a compilation error in the --enable-threads configuration file: [d2188fd2b3] check-in: [db79d08c45] user: kennykb branch: trunk, size: 28847
2005-04-29
22:39
Merge updates from HEAD file: [1c6bf6ab70] check-in: [ac63d218d8] user: dgp branch: dgp-refactor, size: 28748
2005-04-25
21:37
Merged with HEAD. file: [872bb30e7f] check-in: [fcce6158ac] user: kennykb branch: kennykb-numerics-branch, size: 28752
2005-04-16
08:03
Renamed TclWinFreeAllocCache to TclpFreeAllocCache and fixed to recognize when being called with NULL argument. This is a signal for it to clean up the tsd key associated with the threading allocator. file: [67d3057915] check-in: [5c9d9a78f1] user: vasiljevic branch: trunk, size: 28751
2005-04-07
11:29
Renamed TclWinFreeAllocCache to TclpFreeAllocCache and fixed to recognize when being called with NULL argument. This is a signal for it to clean up the tsd key associated with the threading allocator. Part of fixing the Tcl Bug #1178445. file: [caef31f0ae] check-in: [f770d9b761] user: vasiljevic branch: core-8-4-branch, size: 28612
2004-10-28
21:12
* generic/tclAlloc.c: Fixed [Tcl SF Bug 1030548], a * generic/tclThreadAlloc.c: threaded debug build on Windows * win/tclWinThrd.c: now works again. Had to touch Unix * unix/tclUnixThrd.c: as well. Basic patch by Kevin, with modifications by myself. file: [7632b69e84] check-in: [6d824cc2bb] user: andreas_kupries branch: core-8-4-branch, size: 28474
18:45
merge updates from HEAD file: [7bc31cd60b] check-in: [5fdab1eb47] user: dgp branch: dgp-refactor, size: 28500
2004-10-27
20:53
* tests/registry.test: Fixed test files to load the correct * tests/winDde.test: registry and dde packages by using the info * win/Makefile.in: from makefiles to tell tcltest where to load * win/makefile.vc: them from. This avoids grabbing the wrong package from $auto_path which might be the install point rather than the dev location. Kudos to Jennifer Hom for adding -load and -loadfile to the tcltest package. [Bug 926088] file: [ebae2429ee] check-in: [b7e5a90f69] user: davygrvy branch: trunk, size: 28501
2004-09-08
23:02
Merge updates from HEAD file: [3be154d404] check-in: [dff8728918] user: dgp branch: dgp-refactor, size: 28462
2004-07-21
01:45
* generic/tclEvent.c: Correct threaded obj allocator to * generic/tclInt.h: fully cleanup on exit and allow for * generic/tclThreadAlloc.c: reinitialization. [Bug #736426] * unix/tclUnixThrd.c: (mistachkin, kenny) * win/tclWinThrd.c:
file: [c8849854af] check-in: [8a65a24648] user: hobbs branch: trunk, size: 28460
01:30
* generic/tclEvent.c: Correct threaded obj allocator to * generic/tclInt.h: fully cleanup on exit and allow for * generic/tclThreadAlloc.c: reinitialization. [Bug #736426] * unix/tclUnixThrd.c: (mistachkin, kenny) * win/tclWinThrd.c:
file: [3e06afb51a] check-in: [12bdd26d68] user: hobbs branch: core-8-4-branch, size: 28397
2004-07-19
19:23
Redefined MASTER_LOCK to call TclpMasterLock for the sake of Tcl API users never creating interpreters. file: [0e6ff6e569] check-in: [3990dbc1b1] user: vasiljevic branch: core-8-4-branch, size: 27939
19:19
Redefined MASTER_LOCK in win/tclWinThrd.c to call TclpMasterLock for the sake of Tcl API users never creating Tcl interpreters. file: [81769b7520] check-in: [04bcb3edbe] user: vasiljevic branch: trunk, size: 28002
2004-06-22
13:08
Integrated fix for Tcl Bug #770053 from core-8-4-branch file: [d9865a11f4] check-in: [9f739d40a1] user: vasiljevic branch: trunk, size: 27975
11:55
Corrected Tcl Bug #770053 file: [1c3e217090] check-in: [450a52effb] user: vasiljevic branch: core-8-4-branch, size: 27910
2004-05-06
01:02
* 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. file: [0e357bfaeb] check-in: [f350fff007] user: davygrvy branch: core-8-4-branch, size: 27908
2004-05-04
17:44
Merge updates from HEAD. file: [b7c9a63f6c] check-in: [de9c64200c] user: dgp branch: dgp-refactor, size: 27972
2004-04-27
17:17
A little source clean-up with the allocOnce variable. file: [dcb8891071] check-in: [b50ffc369b] user: davygrvy branch: trunk, size: 27973
2004-04-23
07:20
* 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.
file: [8209a206e8] check-in: [4b5a57a7d3] user: davygrvy branch: trunk, size: 27952
07:17
revert back to 1.24.2.2 from prior mistaken commit. file: [ff05d4166a] check-in: [695ac686bc] user: davygrvy branch: core-8-4-branch, size: 27184
07:11
* win/tclWinTime.c: If the Tcl_ExitProc (StopCalibration) is called from the stack frame of DllMain's PROCESS_DETACH, the wait operation should timeout and continue. file: [72e2c71fc4] check-in: [c11c33246a] user: davygrvy branch: core-8-4-branch, size: 27882
2004-02-07
05:47
Merge updates from HEAD

Note that this branch currently does not fully support the new {expand} syntax. Updates to TclEvalScriptTokens and TclCompileScriptTokens are still to come. file: [cb8b5af2ef] check-in: [beeeb45bbf] user: dgp branch: dgp-refactor, size: 27227

2004-01-11
20:36
* win/tclWinThrd.c (Tcl_ConditionNotify): condPtr must be dereferenced to see if there are waiters else uninitialized datum is manipulated. [Bug 849007]
file: [29715810ba] check-in: [6885a5fa49] user: davygrvy branch: trunk, size: 27228
2003-12-24
04:18
All uses of 'panic' (the macro) changed to 'Tcl_Panic' (the function). The #define of panic in tcl.h clearly states it is deprecated in the comments. [Patch 865264] file: [2dd359ad2d] check-in: [524a53e3b3] user: davygrvy branch: trunk, size: 27227
2003-05-13
10:16
fix for [Bug 732477] file: [7f4a83db5a] check-in: [386a7f85ff] user: mistachkin branch: trunk, size: 27181
09:57
fix for [Bug 732477] file: [7419bb4984] check-in: [5cf8febf64] user: mistachkin branch: core-8-4-branch, size: 27186
2003-04-25
20:03
* win/tclWinThrd.c: Applied SF patch #727271. This patch changes the code to catch any errors returned by the windows functions handling TLS ASAP instead of waiting to get some mysterious crash later on due to bogus pointers. Patch provided by Joe Mistachkin.
This is a stop-gap measure to deal with the low number of ?TLS slots provided by some of the variants of Windows (60-80).
file: [2e9663189d] check-in: [563b5bea31] user: andreas_kupries branch: trunk, size: 27156
20:02
* win/tclWinThrd.c: Applied SF patch #727271. This patch changes the code to catch any errors returned by the windows functions handling TLS ASAP instead of waiting to get some mysterious crash later on due to bogus pointers. Patch provided by Joe Mistachkin.
This is a stop-gap measure to deal with the low number of ?TLS slots provided by some of the variants of Windows (60-80).
file: [9201c69224] check-in: [4ac2f9b848] user: andreas_kupries branch: core-8-4-branch, size: 27160
2003-01-14
02:06
Fix mingw build problems and compiler warnings.
* generic/tcl.h: Add if defined(__MINGW32__) check to code that sets the TCL_WIDE_INT_TYPE and TCL_LL_MODIFIER. * generic/tclClock.c (FormatClock): Don't define savedTimeZone and savedTZEnv if we are not going to use them. * generic/tclEnv.c: Add cast to avoid warning. * win/tclWinChan.c: Use DWORD instead of int to avoid compiler warning. * win/tclWinThrd.c: Only define allocLock, allocLockPtr, and dataKey when TCL_THREADS is defined. This avoid a compiler warning about unused variables.
file: [80334a9266] check-in: [5a8676e805] user: mdejong branch: trunk, size: 25676
2002-12-10
04:12
* win/tclWinThrd.c (TclpMasterUnlock): * generic/tclThread.c (TclFinalizeThreadData): TclpMasterUnlock must exist and be called unconditional of TCL_THREADS. [Bug #651139]
file: [d03ae23fc9] check-in: [bcce87164b] user: hobbs branch: core-8-3-1-branch, size: 22918
00:34
* win/tclWinThrd.c (TclpMasterUnlock): * generic/tclThread.c (TclFinalizeThreadData): TclpMasterUnlock must exist and be called unconditional of TCL_THREADS. [Bug #651139]
file: [3c031a4456] check-in: [f6b3168d0c] user: hobbs branch: trunk, size: 25582
2002-11-26
22:35
* win/tclWinConsole.c: * win/tclWinPipe.c: * win/tclWinSerial.c: * win/tclWinSock.c: * win/tclWinThrd.c: * win/tclWinTime.c: General cleanup of all worker threads used by the channel drivers. Eliminates the normal case where the worker thread is terminated ('cept the winsock one). Instead, use kernel events to signal a clean exit. Only when the worker thread is blocked on an I/O call is the thread terminated. Essentially, this makes all other channel worker threads behave like the PipeReaderThread() function for it's cleaner exit behavior. This appears to fix [Bug 597924] but needs 3rd party confirmation to close the issue.
file: [f31327b124] check-in: [a2db2b4e4a] user: davygrvy branch: trunk, size: 25597
2002-11-19
01:29
* win/tclWinThrd.c (Tcl_CreateThread/TclpThreadExit): Fixed improper compiler macros that missed the VC++ compiler. This resulted in VC++ builds using CreateThread()/ExitThread() in place of the proper _beginthreadex()/_endthreadex(). This was a large error and am surprised I missed seeing it earlier.
file: [1b0c77878f] check-in: [31c2a09d6f] user: davygrvy branch: trunk, size: 25598
2002-10-15
19:38
* win/tclWinThrd.c: removed unnecessary dos.h include. Use problematic CreateThread/ExitThread for compilers that can't do _beginthreadex/_endthreadex.
file: [2b4892f243] check-in: [8479fc099d] user: hobbs branch: core-8-3-1-branch, size: 22920
2002-08-30
15:33
merged with trunk at tag macosx-8-4-merge-2002-08-30-trunk file: [7defb3f92d] check-in: [c69eee32c0] user: das branch: macosx-8-4-branch, size: 25555
2002-08-29
19:02
* win/tclWinThrd.c (TclpFinalizeThreadData, TclWinFreeAllocCache): Applied patch for bug #599428, provided by Miguel Sofer <[email protected]>. file: [3436a3be7f] check-in: [9fb15282b0] user: andreas_kupries branch: trunk, size: 25563
2002-06-10
05:33
Merging with TOT as of 06/09/2002. file: [71435525ad] check-in: [73b68fb238] user: wolfsuit branch: macosx-8-4-branch, size: 25594
2002-04-23
17:03
* generic/tclAlloc.c: * generic/tclInt.h: * generic/tclThreadAlloc.c (new): * unix/Makefile.in: * unix/tclUnixThrd.c: * win/Makefile.in: * win/tclWinInt.h: * win/tclWinThrd.c: added new threaded allocator contributed by AOL that significantly reduces lock contention when multiple threads are in use. Only Windows and Unix implementations are ready, and the Windows one may need work. It is only used by default on Unix for now, and requires that USE_THREAD_ALLOC be defined (--enable-threads on Unix will define this).
file: [38dae562ec] check-in: [28a1df4ae9] user: hobbs branch: trunk, size: 25587
2001-09-07
18:57
* win/tclWinThrd.c (TclpThreadExit): Cast status argument to _endthreadex to unsigned instead of DWORD to match the Win32 function prototype.
file: [53beea2f53] check-in: [3c678e5d93] user: mdejong branch: trunk, size: 24308
2001-09-05
00:32
* tclWinThrd.c: Revisited _beginthreadex() stuff. Instead of assuming a c-runtime implimentation of _beginethreadex normal, I reversed the logic to not assume, and use when is.
file: [72481dd9bc] check-in: [0eca61869a] user: davygrvy branch: trunk, size: 24305
2001-09-03
01:28
* win/tclWinThrd.c: Moved FinalizeConditionEvent() proto to within the main #ifdef TCL_THREADS block to avoid mingw warning about it being there but unused.
file: [a3587ab37b] check-in: [7937aa216e] user: davygrvy branch: trunk, size: 24239
00:37
* win/tclWinThrd.c: Portability fix for Cygwin who's c-runtime, not surprisingly, doesn't have the MSVCRT specific _beginthreadex / _endthreadex pair. This might have to be revisited for proper Borland, lcc32, Watcom and other support as well.
file: [0b18869790] check-in: [de61a1528e] user: davygrvy branch: trunk, size: 24209
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: [348c701380] check-in: [11201d88be] user: davygrvy branch: core-8-3-1-branch, size: 22638
2001-08-07
00:43
* win/tclWinThrd.c (TclpFinalizeMutex, TclpFinalizeCondition): added DeleteCriticalSection calls for cleanup [Patch: #419683]
file: [b57117bebb] check-in: [82e9771527] user: hobbs branch: trunk, size: 23830
2001-07-24
19:47
* win/tclWinThrd.c (Tcl_CreateThread): Close Windows HANDLE returned by _beginthreadex. The MS documentation states that this handle is not closed by a later call to _endthreadex.
file: [c614a456ac] check-in: [e81a6a1d2c] user: mdejong branch: trunk, size: 23754
2001-07-16
23:30
* win/tclWinConsole.c: * win/tclWinPipe.c: * win/tclWinPort.h: * win/tclWinSerial.c: * win/tclWinThrd.c: Remove unnecessary #includes of dos.h, direct.h, and tchar.h. This will help the Cygwin porting effort since these headers do not exist under Cygwin.
file: [ec686240cc] check-in: [4291ec89da] user: mdejong branch: trunk, size: 23720
2000-08-08
19:03
Deleted: Created branch tclpro-1-5-0-synthetic check-in: [e979569c4f] user: cvs2fossil branch: tclpro-1-5-0-synthetic, size: 0
2000-06-13
20:30
* win/tclWinDde.c: * win/tclWinInit.c: * win/tclWinNotify.c: * win/tclWinPipe.c: * win/tclWinReg.c: * win/tclWinThrd.c: Applied patch from [Bug 5794]. file: [035660d8ee] check-in: [84806aadba] user: ericm branch: trunk, size: 23735
2000-05-09
19:13
2000-05-09 Andreas Kupries <[email protected]> operating as proxy for David Gravereaux <[email protected]>
* win/tclWinThrd.c (TclpInitLock, TclpMasterLock): Added missing initialization of joinLock.
file: [8a38ebbd9c] check-in: [c1e244a299] user: kupries branch: trunk, size: 23726
2000-05-02
22:02
2000-05-02 Andreas Kupries <[email protected]>
* Overall changes: (1) Implementation of joinable threads for all platforms. (2) Additional API's for channels. Required to allow the thread extension to move channels between threads.
* generic/tcl.decls (lines 1360f): Added Tcl_JoinThread, Tcl_IsChannelShared, Tcl_IsChannelRegistered, Tcl_CutChannel, Tcl_SpliceChannel, Tcl_IsChannelExisting and Tcl_ClearChannelHandlers (slots 394 to 400).
* generic/tclIO.c: Implemented Tcl_IsChannelRegistered, Tcl_IsChannelShared, Tcl_CutChannel, Tcl_SpliceChannel, Tcl_IsChannelExisting and Tcl_ClearChannelHandlers. Tcl_CutChannel uses code from CloseChannel. Replaced this code by a call to Tcl_CutChannel. Replaced several code fragments adding channels to the channel list with calls to Tcl_SpliceChannel. Removed now unused variables from CloseChannel and Tcl_UnstackChannel. Tcl_ClearChannelHandlers uses code from Tcl_Close. Replaced this code by a call to Tcl_ClearChannelHandlers. Removed now unused variables from Tcl_Close. Added the subcommands 'cut', 'forgetch', 'splice' and 'isshared' to the test code (TclTestChannelCmd).
* unix/tclUnixThread.c: Implemented Tcl_JoinThread using the pthread-functionality.
* win/tclWinThrd.c: Fixed several small typos in comments. Implemented Tcl_JoinThread using a platform independent emulation layer (see generic/tclThreadJoin.c below). Added 'joinLock' to serialize Tcl_CreateThread and TclpExitThread to prevent a race for joinable threads.
* mac/tclMacThrd.c: Implemented Tcl_JoinThread using a platform independent emulation layer (see generic/tclThreadJoin.c below). Due to the cooperative nature of threading on this platform the race mentioned above is not present.
* generic/tclThreadJoin.c: New file. Contains a platform independent emulation layer helping in the implementation of joinable threads for the win and mac platforms.
* generic/tclInt.h: Added declarations for TclJoinThread, TclRememberJoinableThread and TclSignalExitThread. These procedures define the API of the emulation layer for joinable threads (see generic/tclThreadJoin.c above).
* win/Makefile.in: * win/makefile.vc: Added generic/tclTheadJoin.o to the rules.
* mac/: I don't know to which file generic/tclTheadJoin.o has to be added to so that it compiles. Sorry.
* unix/tclUnixChan.c: #ifdef'd the thread-local list of file channels as it prevents us from transfering channels. To restore this we may need an extended interface to drivers in the future. Target: 9.0. Found while testing the new transfer of channels. The information in this list for a channel was left behind and then crashed the system during finalization.
* generic/tclThreadTest.c: Added -joinable flag to 'testthread create'. Added subcommand 'testthread join'.
* doc/CrtChannel.3: Added documentation for Tcl_IsChannelRegistered, Tcl_IsChannelShared, Tcl_CutChannel, Tcl_SpliceChannel, Tcl_IsChannelExisting and Tcl_ClearChannelHandlers.
* doc/Thread.3: Added documentation for Tcl_JoinThread.
* tests/thread.test: Added tests for joining of threads.
file: [017176e5b1] check-in: [cdf262856d] user: kupries branch: trunk, size: 23647
2000-04-20
01:30
* library/dde1.1/pkgIndex.tcl: * library/reg1.0/pkgIndex.tcl: * win/tclWinChan.c: * win/tclWinThrd.c: converted CRLF to LF the */tcl.hpj.in files were not converted, as it confuses hcw locally. [Bug: 5096]
* win/Makefile.in: expanded cleanup or help files
* doc/Thread.3: minor macro cleanup
file: [dccd3ec028] check-in: [c818263820] user: hobbs branch: trunk, size: 22364
2000-04-17
20:32
Added Tcl_CreateThreadType and TCL_RETURN_THREAD_TYPE macros for declaring the NewThread callback proc. file: [576739ba4e] check-in: [3013a54849] user: welch branch: trunk, size: 22378
2000-04-09
16:04
2000-04-08 Andreas Kupries <[email protected]>
* Overall change: Definition of a public API for the creation of new threads.
* generic/tclInt.h (line 1802f): Removed the definition of 'TclpThreadCreate'. (line 793f) Removed the definition of 'Tcl_ThreadCreateProc'.
* generic/tcl.h (line 388f): Readded the definition of 'Tcl_ThreadCreateProc'. Added Win32 stuff send in by David Graveraux <[email protected]> to that too (__stdcall, ...). Added macros for the default stacksize and allowed flags.
* generic/tcl.decls (line 1356f): Added definition of 'Tcl_CreateThread', slot 393 of the stub table. Two new arguments in the public API, for stacksize and flags.
* win/tclWinThrd.c: * mac/tclMacThrd.c: Renamed TclpThreadCreate to Tcl_CreateThread, added handling of the stacksize. Flags are currently ignored.
* unix/tclUnixThrd.c: See above, but handles joinable flag. Ignores the specified stacksize if the macro HAVE_PTHREAD_ATTR_SETSTACKSIZE is not defined.
* generic/tclThreadTest.c (line 363): See below.
* unix/tclUnixNotfy.c (line 210): Adapted to the changes above. Uses default stacksize and no flags now.
* unic/tcl.m4 (line 382f): Added a check for 'pthread_attr_setstacksize' to detect platforms not implementing this feature of pthreads. If it is implemented, configure will define the macro HAVE_PTHREAD_ATTR_SETSTACKSIZE (See unix/tclUnixThrd.c too).
* doc/Thread.3: Added Tcl_CreateThread and its arguments to the list of described functions. Removed stuff about not providing a public C-API for thread-creation.
file: [cfa352ba7b] check-in: [51f6c167f6] user: kupries branch: trunk, size: 22394
1999-12-22
00:00
* win/mkd.bat: * win/rmd.bat: removed necessity of tag.txt [Bug: 3874]
* win/tclWinThrd.c: changed CreateThread to _beginthreadex and ExitThread to _endthreadex
* win/README.binary: * win/configure.in: updated to patch level 8.3b1
file: [5240d9b184] check-in: [375e49cc20] user: hobbs branch: trunk, size: 22230
1999-08-10
17:35
* generic/tclListObj.c: * generic/tcl.decls: * generic/tclDecls.h: Applied patch from Jim Ingham to change the prototype of Tcl_ListObjGetElements to have the last argument have a CONST so that you can feed it the objv that you get from the standard TclObj command proc.

* generic/tclAlloc.c: * generic/tclCmdIL.c: * generic/tclIO.c: * generic/tclThread.c: * win/tclWinThrd.c: * unix/tclUnixThrd.c: Fixed Brent's changes so that they work on Windows (and he fixed the bug in the Unix thread implementation). file: [1dfc91e709] check-in: [cfb9ace67b] user: redman branch: trunk, size: 22229

02:42
Added Tcl_GetAllocMutex for use by tclAlloc.c and tclCkalloc.c file: [89b29eaf29] check-in: [a5ed5c1af7] user: welch branch: trunk, size: 22174
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-14
00:33
Fixed comments in code that referred to APIs that no longer exist, were misspelled, or have been updated. file: [1cfe78aef8] check-in: [2d7ffe4998] user: surles branch: core-8-1-branch-old, size: 22060
1999-04-02
19:43
Fixed warnings from VC++. file: [c174529cdf] check-in: [ede99b1301] user: redman branch: core-8-1-branch-old, size: 22064
1999-04-01
23:25
Reimplemented Tcl_ConditionNotify and Tcl_ConditionWait based on an algorithm contributed by Jim Davidson. file: [92df1aa9cd] check-in: [87deb82e27] user: welch branch: core-8-1-branch-old, size: 22048
1999-03-08
20:14
First pass at integrating stubs mechanism from 8.0. file: [ac70e0ec05] check-in: [eeba5fd9e9] user: stanton branch: dev-8-1-stubs-branch, size: 16362
1998-12-12
01:36
Minor change to Lock Declarations to use TCL_DECLARE_MUTEX macro, published in tcl.h. file: [685ba8fa0d] check-in: [c778c9ef5e] user: lfb branch: core-8-1-branch-old, size: 16356
1998-09-21
23:39
Added: Added contents of Tcl 8.1a2 file: [b21aaeb853] check-in: [8c56dc8868] user: stanton branch: core-8-1-branch-old, size: 16355