Tcl Source Code

All files named "unix/tclUnixThrd.c"
Login

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

History for unix/tclUnixThrd.c

2024-04-29
07:12
Missing TCL_NORETURN for Tcl_ExitThread() (and TclpThreadExit()). Backported from 8.7/9.0. file: [acf2cabeeb] check-in: [5103ed9db2] user: jan.nijtmans branch: core-8-6-branch, size: 18774
2024-04-25
09:41
Make it more clear that TclpThreadExit() and Tcl_ExitThread() are TCL_NORETURN too file: [eee0acda1a] check-in: [542ee37b9a] user: jan.nijtmans branch: main, size: 20758
09:40
Make it more clear that TclpThreadExit() and Tcl_ExitThread() are TCL_NORETURN too. file: [0a76b65791] check-in: [3483b63d35] user: jan.nijtmans branch: core-8-branch, size: 21980
2024-04-23
16:06
Hmm, something is broken. Leaving this here but this commit is definitely wrong somehow file: [3e04d42d41] check-in: [b356268e32] user: dkf branch: tidy-indentation, size: 20743
2024-03-20
13:14
(backport) more spacing/formatting tweaks. For now, macosx/unix/win only. file: [fa85797dfa] check-in: [dc8a99efff] user: jan.nijtmans branch: core-8-branch, size: 21967
2024-01-30
17:07
Tweaking indentation of code; really unimportant... file: [dd1ab5930f] check-in: [bb72806960] user: dkf branch: dkf-indent-tweak, size: 20747
2023-10-10
19:40
Merge 8.7 file: [81f7a93709] check-in: [f1543f19f8] user: jan.nijtmans branch: main, size: 20745
2023-05-23
16:15
Merge 8.7 file: [71d2a11e05] check-in: [c5dc388878] user: jan.nijtmans branch: main, size: 20760
16:03
Give Tcl_CreateThread a TCL_HASH_TYPE (unsigned) stackSize parameter file: [3f361a78b0] check-in: [232fb6c5c5] user: jan.nijtmans branch: core-8-branch, size: 21972
2023-04-04
20:50
more progress file: [cca7990228] check-in: [4e36871191] user: jan.nijtmans branch: optional-signed-size, size: 20749
2023-03-30
22:02
Merge 8.6 file: [8372d55316] check-in: [166e8656a7] user: jan.nijtmans branch: core-8-branch, size: 21956
15:19
Fix [0cb3554903]: macOS 13 SDK deprecates sprintf(). But better not use it on other platforms either. file: [884541aceb] check-in: [ec56f33813] user: jan.nijtmans branch: bug-0cb3554903, size: 18761
2023-03-05
20:46
Merge 9.0 file: [96a10b8c54] check-in: [fef53bf657] user: jan.nijtmans branch: tip-626, size: 20747
2021-09-21
08:36
Experiment: Make Tcl_Time a long long in stead of a struct file: [31a851c661] check-in: [7d007b4694] user: jan.nijtmans branch: tcl-time-64bit, size: 20702
2021-08-23
14:54
Merge 8.7 file: [0eb5f24c59] check-in: [30412ad14a] user: jan.nijtmans branch: main, size: 20752
13:00
Make everything compile warning-free when TCL_THREADS=0 file: [325d64b2e4] check-in: [2abafeca96] user: jan.nijtmans branch: core-8-branch, size: 21932
2020-12-08
15:42
Merge 8.7 file: [2c418a5674] check-in: [71493b571b] user: jan.nijtmans branch: main, size: 20621
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: [aa145549e7] check-in: [4254aa305b] user: jan.nijtmans branch: core-8-branch, size: 21801
2020-08-11
13:47
Merge 8.7 file: [8714f9efa6] check-in: [4c67165ae6] user: jan.nijtmans branch: trunk, size: 20627
13:07
Merge 8.6 file: [2f73cf343d] check-in: [65e8363113] user: jan.nijtmans branch: core-8-branch, size: 21807
12:44
Code cleanup: less of use "register" keyword, and better use of typecasts file: [982dcd7f53] check-in: [8699923633] user: jan.nijtmans branch: core-8-6-branch, size: 18737
2020-07-21
07:54
Merge 8.7 file: [46a58dceb5] check-in: [b23af47e56] user: jan.nijtmans branch: trunk, size: 20631
2020-07-20
14:58
Merge 8.6 file: [ceff4e852d] check-in: [2f045a43d6] user: jan.nijtmans branch: core-8-branch, size: 21820
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: [8dcf843491] check-in: [9fbbf06bfc] user: jan.nijtmans branch: core-8-6-branch, size: 18657
2020-07-13
14:24
More WIP file: [032e385728] check-in: [38b4e0ed91] user: jan.nijtmans branch: no-master-slave, size: 18604
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: [8107bc2ad4] check-in: [f9ba684c6b] user: jan.nijtmans branch: no-master-slave, size: 18612
2020-02-28
12:46
Merge 8.7 file: [174d398e91] check-in: [b7af922d61] user: jan.nijtmans branch: trunk, size: 20631
2020-02-13
22:06
Merge 8.7 file: [e56ec7cea9] check-in: [c59e305ca6] user: jan.nijtmans branch: cplusplus, size: 21820
2020-01-13
12:11
Merge 8.7 file: [43187b3738] check-in: [4a9636c39a] user: jan.nijtmans branch: trunk, size: 20522
10:44
Merge 8.6 file: [620feee2e3] check-in: [dc4d9a7fc0] user: jan.nijtmans branch: core-8-branch, size: 21711
10:00
Silence some gcc-9 compiler warnings. file: [a83393e28d] check-in: [8bfb4f1f0b] user: jan.nijtmans branch: core-8-6-branch, size: 18654
2019-08-02
12:15
Merge 8.7. Continue implementation for win32 file: [7b002c9397] check-in: [ff6fa30271] user: jan.nijtmans branch: cplusplus, size: 21806
2019-07-25
09:01
Merge 8.7 file: [93da6555cb] check-in: [d1d9e1e6b5] user: jan.nijtmans branch: trunk, size: 20508
2019-07-17
15:38
Eliminate "register" keyword _everywhere_ in Tcl. This keyword is deprecated in C++ (removed in C++17, even), and essentially does nothing with most modern compilers. file: [61bc73f0b9] check-in: [f074bda87c] user: jan.nijtmans branch: no-register, size: 21697
2019-07-04
06:54
Experiment: compile Tcl with C++ compiler. WIP file: [97bc94c459] check-in: [99d5f9c948] user: jan.nijtmans branch: cplusplus, size: 21815
2018-10-19
21:11
Fix [77f1088210fd739]: trunk: mac os x: compilation warnings file: [28382b537b] check-in: [bac617bc8b] user: jan.nijtmans branch: trunk, size: 20517
2018-09-28
19:56
Merge trunk file: [2b5efed321] check-in: [a2590b5725] user: jan.nijtmans branch: memory-API, size: 20669
18:57
Merge 8.7 file: [2fed72e5cd] check-in: [d812be8851] user: jan.nijtmans branch: trunk, size: 20670
09:49
Clean up code style and add key phrases to documentation. file: [7bb1dff5a5] check-in: [c35c3a7455] user: dkf branch: tip-509, size: 21706
09:18
merge core-8-branch file: [0f5a0ebe05] check-in: [b3d9254efa] user: dkf branch: tip-509, size: 20331
2018-09-03
09:12
merge zipfs file: [e332a984ae] check-in: [4efd0e60fa] user: jan.nijtmans branch: androwish, size: 22433
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: [beb102be1f] check-in: [f13660b5a5] user: jan.nijtmans branch: memory-API, size: 17238
2018-06-28
21:42
More API changes using size_t. Internal changes not complete yet (WIP) file: [ffc4b656dd] check-in: [1bfecd9172] user: jan.nijtmans branch: memory-API, size: 17230
2018-06-27
19:09
merge trunk file: [467e35c2c8] check-in: [2cc2d71f0a] user: jan.nijtmans branch: memory-API, size: 17236
2018-06-25
20:39
merge 8.7 file: [03bb450c9e] check-in: [cafdafc31b] user: jan.nijtmans branch: trunk, size: 17239
20:38
merge 8.6 file: [46c5c08b2e] check-in: [1c67775fe7] user: jan.nijtmans branch: core-8-branch, size: 18403
07:22
Simplify ToUtf(), expecially for TCL_UTF_MAX>3 (with correct surrogate handling). Fix various typo's file: [660213cbfd] check-in: [257ff5d1b3] user: jan.nijtmans branch: core-8-6-branch, size: 18638
2018-06-12
18:02
close fork file: [b40a3ede81] check-in: [095715c4fa] user: dgp branch: tip-509, size: 20328
2018-06-09
17:20
Removed thread-specific mutex lock counter and replaced by shared counter + thread ID for systems without PTHREAD_MUTEX_RECURSIVE file: [2311e1cd91] check-in: [d386bed41a] user: fbonnet branch: tip-509, size: 20328
2018-05-31
21:24
merge zipfs file: [c743f55f4a] check-in: [fc74365c13] user: jan.nijtmans branch: androwish, size: 22430
2018-05-27
16:32
merge 8.7 file: [3f53289d50] check-in: [996d385bff] user: jan.nijtmans branch: tip-509, size: 20405
2018-05-25
19:43
TIP #509: Implement reentrant mutexes on all platforms file: [d2334e076d] check-in: [2aebf23fa0] user: fbonnet branch: tip-509, size: 20405
2018-05-23
19:41
merge trunk file: [fdba2928fb] check-in: [c78f328143] user: jan.nijtmans branch: novem, size: 17233
19:31
merge 8.7 file: [9090c2894f] check-in: [91ca7d60f7] user: jan.nijtmans branch: trunk, size: 17236
19:31
Unbreak build with other CFLAGS, such as TCL_MEM_DEBUG=1 or TCL_THREADS=0 on Linux file: [4a561b5438] check-in: [d54dcf0b00] user: jan.nijtmans branch: core-8-branch, size: 18400
2018-05-22
20:57
merge 8.7 file: [b907419b54] check-in: [b0fbde34ff] user: jan.nijtmans branch: trunk, size: 17194
20:53
Simplify usage of TCL_THREAD, along the lines of [eeddb0693a]. Suggested by DKF file: [11dc44028a] check-in: [bf06e36b25] user: jan.nijtmans branch: core-8-branch, size: 18358
2018-05-17
19:05
Merge 8.7, but keep TCL_THREADS undefined in tcl.h (since that's no longer necessary) file: [ac327d1fc2] check-in: [f2c996cdb8] user: jan.nijtmans branch: trunk, size: 17494
18:53
TIP #491 implementation: Threading Support: phasing out non-threaded builds file: [c2378081b3] check-in: [e9ee6fc387] user: jan.nijtmans branch: core-8-branch, size: 18708
2018-05-11
09:15
merge 8.7 file: [b8da42df0d] check-in: [f956a39898] user: jan.nijtmans branch: trunk, size: 17230
08:12
merge 8.6 file: [ecf684c600] check-in: [61bcb3ad68] user: jan.nijtmans branch: core-8-branch, size: 18400
08:10
merge 8.5 file: [eaea2e93d2] check-in: [79e6efb2f5] user: jan.nijtmans branch: core-8-6-branch, size: 18635
07:53
Rename Tcl_Dir to TclDIR, making it clear that this macro is not part of the public API file: [d6c2843669] check-in: [3257682387] user: jan.nijtmans branch: core-8-5-branch, size: 20513
2018-05-09
15:49
merge 8.6 file: [8392d4e271] check-in: [34cff0f8eb] user: dgp branch: core-8-branch, size: 18401
10:34
merge 8.5 file: [8654373669] check-in: [210ccdf585] user: sebres branch: core-8-6-branch, size: 18636
10:29
amend to [85bcf84100]: replaces DIR with Tcl_Dir (DIR/DIR64 regarding HAVE_STRUCT_DIRENT64) file: [3d4de064b5] check-in: [f80031df45] user: sebres branch: core-8-5-branch, size: 20514
2017-11-20
12:07
If Tcl is compiled with -DTCL_NO_DEPRECATED, remove a lot of (internal) stub entries which correspond to functions which will be removed in Tcl 9. This commit should have been part of [7849f573c0e7d758|this] earlier commit. No effect when Tcl is not compiled with -DTCL_NO_DEPRECATED. file: [4bb341564b] check-in: [4a603a5f7d] user: jan.nijtmans branch: core-8-branch, size: 18397
2017-11-08
15:50
Tcl-9 huge cleanup: Remove many unused internal functions which do nothing more than occupy the internal stub table. file: [275d8aa9df] check-in: [5b49111b6d] user: jan.nijtmans branch: tcl-9-cleanup, size: 17274
2017-04-13
10:00
Merge trunk file: [c1e59a6ab4] check-in: [0169fbc878] user: jan.nijtmans branch: tkt3328635-posix-monotonic-clock, size: 19400
2017-04-06
15:25
Some more (internal) stub entries which can be cleaned up with -DTCL_NO_DEPRECATED, because they are not used any more. file: [d1157523e9] check-in: [d731f72293] user: jan.nijtmans branch: trunk, size: 18364
2017-01-16
11:59
merge trunk file: [3ac6465779] check-in: [72fe4fc922] user: jan.nijtmans branch: novem, size: 17271
2017-01-13
11:17
Patch from Zoran Vasiljevic, fix for missing proper initialization of the threaded allocator in some situations. file: [aabbe6b75b] check-in: [86d412ef6d] user: jan.nijtmans branch: notifier, size: 18307
2017-01-06
11:55
Merge zipfs file: [6245652aa4] check-in: [ab145ad122] user: jan.nijtmans branch: androwish, size: 22427
2016-12-01
11:20
More internal use of size_t. Eliminate unused "isBin" argument from TclpSysAlloc() file: [38b61e0921] check-in: [9d4cd6b1aa] user: jan.nijtmans branch: novem, size: 17349
2016-11-02
12:16
merge zipfs file: [601d0ec0aa] check-in: [0d7d946d30] user: jan.nijtmans branch: androwish, size: 22398
2016-10-11
21:53
merge trunk file: [b37cd683a3] check-in: [d5f3db4df2] user: jan.nijtmans branch: novem, size: 17352
21:52
Fix [3cc1d91345]: duplicate calls to TclpFreeAllocCache() on thread exists file: [2a368d62f6] check-in: [bbfcd2c669] user: jan.nijtmans branch: trunk, size: 18385
21:43
Fix [3cc1d91345]: duplicate calls to TclpFreeAllocCache() on thread exists file: [d6807a7af6] check-in: [7a3c8a4b0d] user: jan.nijtmans branch: core-8-6-branch, size: 18632
21:35
Fix [3cc1d91345]: duplicate calls to TclpFreeAllocCache() on thread exists file: [58030d4c6c] check-in: [509d964dcf] user: jan.nijtmans branch: core-8-5-branch, size: 20510
2016-09-26
15:38
Merge core-8-6-branch. upstream androwish modifications. file: [4d87d14e09] check-in: [88fd04e92c] user: jan.nijtmans branch: androwish, size: 22352
09:35
[3328635] Latest patch from Christian Werner file: [0d41b608e9] check-in: [965d56c3af] user: jan.nijtmans branch: tkt3328635-posix-monotonic-clock, size: 19254
2016-08-19
12:45
merge zipfs file: [5d916dcebb] check-in: [63eab9444d] user: jan.nijtmans branch: androwish, size: 18585
2016-06-30
13:16
Simplify use of "struct" keyword in many places. file: [e9ff4705ef] check-in: [2e6ea5716f] user: jan.nijtmans branch: trunk, size: 18218
2016-04-01
13:09
Merge trunk. Remove excess spacing. file: [8e9ecc935b] check-in: [d48b5dfaf7] user: jan.nijtmans branch: novem, size: 17185
13:06
RFE [0ef5e653]: Add nsf to coffbase.txt. Eliminate exess spacing file: [5d9c6ec00d] check-in: [976ec94ceb] user: jan.nijtmans branch: trunk, size: 18262
12:00
merge trunk file: [921335a614] check-in: [925fddfb82] user: jan.nijtmans branch: novem, size: 17189
11:56
Two micro-optimizations in Win and UNIX notifier. See: http://code.activestate.com/lists/tcl-core/15645/ file: [df123efd93] check-in: [b1a8aa4406] user: jan.nijtmans branch: trunk, size: 18266
2016-03-30
20:03
The following patch against a stock tcl 8.6.5 source tree tries to

implement most of TIP #302 for UN*X and WIN32/64:

* use clock_gettime(CLOCK_MONOTONIC) for relative timing (UN*X)
when available (tested at runtime)
* use PTHREAD_CONDATTR_SETCLOCK et.al. for pthread_cond (UN*X)
when available (tested at runtime)
* use GetTickCount64() for relative timing (WIN64)
* use GetTickCount() for relative timing (WIN32 for WINNT<6.0)
* configure (UN*X) detects availabilty of clock_gettime() and
pthread_condattr_setclock() plus adds optional -lrt to LIBS
* configure (WIN32) adds command line option --with-tickcount
to turn on GetTickCount*() usage

Trade-off: implementation eliminates virtualized time, unfortunately.

Best regards,

Christian Werner

--- missing merge ---

diff -ur tcl8.6.5-orig/win/configure.in tcl8.6.5/win/configure.in

--- tcl8.6.5-orig/win/configure.in 2016-02-29 20:13:09.000000000 +0100

+++ tcl8.6.5/win/configure.in 2016-03-25 06:47:47.712516747 +0100

@@ -142,6 +142,15 @@

])
AC_DEFINE(HAVE_ZLIB, 1, [Is there an installed zlib?])

+AC_ARG_WITH(tickcount,

+ AC_HELP_STRING([--with-tickcount],

+ [use GetTickCount for timers, turns off interp time limits]),

+ [tcl_ok=$withval], [tcl_ok=no])

+AC_MSG_RESULT([$tcl_ok])

+if test $tcl_ok = yes; then

+ AC_DEFINE(WIN32_USE_TICKCOUNT, 1, [Use GetTickCount for timers?])

+fi

+

AC_CHECK_TYPE([intptr_t], [ AC_DEFINE([HAVE_INTPTR_T], 1, [Do we have the intptr_t type?])], [ AC_CACHE_CHECK([for pointer-size signed integer type], tcl_cv_intptr_t, [
file: [bd590f5b5d] check-in: [6fa1088680] user: oehhar branch: tip-302, size: 19547
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: [c0fe9da24a] check-in: [0f401c5c64] user: jan.nijtmans branch: notifier, size: 18267
2016-03-21
14:22
(experiment) Use TclpMasterLock() in stead of a separate notifierInitMutex. One less mutex to be worried about. file: [ffdd73c4ec] check-in: [2aa18b39c4] user: jan.nijtmans branch: notifier, size: 18961
12:10
merge trunk file: [8a494bfe6f] check-in: [960c5239bf] user: jan.nijtmans branch: novem, size: 17414
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: [23c5842371] check-in: [a8ea065823] user: jan.nijtmans branch: trunk, size: 18491
2015-10-21
23:30
Micro-optimization: remove double checked lock from TclGetAllocCache in favour of initialization in TclInitSubsystems file: [02f342abd3] check-in: [fdbf64dc50] user: kbk branch: drh-micro-optimization, size: 18362
20:18
Further cleanup and enhancements. file: [3fe562e0a2] check-in: [e53cd46a2a] user: mistachkin branch: bug-57945b574a, size: 22224
19:11
Add experimental Tcl_SetMutexWaitProc public API. file: [7913d3fe70] check-in: [74d995560a] user: mistachkin branch: bug-57945b574a, size: 21514
2015-10-19
12:53
merge trunk file: [b93e4a81d6] check-in: [71504dd6f0] user: jan.nijtmans branch: novem, size: 17509
2015-10-18
10:34
Bring back Tcl_MutexLock() to exact implementation in Tcl 8.6.4. For details, see [ba44e415a0]: Use of mutexLock causes problem with reactive event handling in AndroWish file: [76f8f042a6] check-in: [ebfd1b23cb] user: jan.nijtmans branch: trunk, size: 18586
10:31
Bring back Tcl_MutexLock() to exact implementation in Tcl 8.5.18. For details, see [ba44e415a0]: Use of mutexLock causes problem with reactive event handling in AndroWish file: [01d3e5eaec] check-in: [6c765efe9d] user: jan.nijtmans branch: core-8-5-branch, size: 20464
2015-09-28
10:58
Don't use mutex retry mechanism on Android. (problems ???) file: [d4aeed7dcc] check-in: [218071d627] user: jan.nijtmans branch: androwish, size: 18643
2015-09-25
17:12
merge trunk file: [cb72e0044a] check-in: [e2fac8a6f7] user: jan.nijtmans branch: novem, size: 18881
2015-09-24
10:54
Fix [5d170b5ca5]: checkin 9f8b7bea5344f1b0 broke netbsd's thread notifier file: [c8a4006ec8] check-in: [f30afc36b5] user: jan.nijtmans branch: core-8-5-branch, size: 21836
2015-08-28
01:10
Further refinements. file: [67e365503f] check-in: [f31817e841] user: mistachkin branch: bug-57945b574a, size: 21304
00:46
Experimental changes to reduce lock contention during fork(). file: [9a1fa4a723] check-in: [a989ec9aa1] user: mistachkin branch: bug-57945b574a, size: 20776
2015-08-19
11:26
merge trunk. Remove now unused internal functions. file: [6bc24aa131] check-in: [afefb60708] user: jan.nijtmans branch: bug-5d170b5ca5, size: 19958
2015-07-29
14:56
merge trunk file: [d77af7d064] check-in: [2fe99beec9] user: dgp branch: novem, size: 19650
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: [45358e1e63] check-in: [6abeca2800] user: jan.nijtmans branch: core-8-5-branch, size: 22605
2015-06-08
20:56
The unit for usleep() is microseconds, not milliseconds. file: [1310507ae8] check-in: [68decd512b] user: mistachkin branch: bug-57945b574a, size: 20727
2015-05-18
20:33
First attempt at implementing the necessary auto-magic for usleep. file: [7d3827c6e9] check-in: [f1e461bdbc] user: mistachkin branch: bug-57945b574a, size: 20720
18:23
Adjust tweaks from the previous check-in to prepare for configure detection of usleep(). file: [07afff8e2c] check-in: [7697b08d77] user: mistachkin branch: bug-57945b574a, size: 20844
2015-05-17
23:45
Temporary tweaks to allow Thread package tests to pass on Unix. file: [a03dafda35] check-in: [1334a0f10a] user: mistachkin branch: bug-57945b574a, size: 20707
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: [4c1034a0a1] check-in: [dcdbdb965a] user: mistachkin branch: bug-57945b574a, size: 20651
20:10
Fix deadlock. file: [0ad08ad3c8] check-in: [0b7a654181] user: mistachkin branch: bug-57945b574a, size: 19767
18:03
Draft fix for a potential race condition in the new Tcl_MutexUnlockAndFinalize API. Not yet tested. file: [6580c82214] check-in: [53d99af757] user: mistachkin branch: bug-57945b574a, size: 19767
2014-10-09
18:44
Updated patch for Ticket 3328635 to implement fixes for virtualk time (use of clock_gettime, and, where available, of monotonic clocks). file: [181c9e0003] check-in: [265e84eb5e] user: andreask branch: tkt3328635-posix-monotonic-clock, size: 21423
2014-05-01
15:16
merge trunk file: [30d28b0e85] check-in: [ace047c40e] user: jan.nijtmans branch: novem, size: 17510
2014-04-24
04:34
[3493120] Plug memory leak in thread exit. file: [67d061be03] check-in: [6b5f70a82f] user: dgp branch: trunk, size: 18587
2014-04-23
09:18
*nix segfault cleared: we should reset a thread key after freeing of alloc cache (in tclUnixThrd.c) file: [479aec97fd] check-in: [1dc6ea5ab2] user: sebres branch: bug-3493120, size: 20472
2013-10-28
21:45
Try resetting all the 'one time' locks as well. file: [973245d6cf] check-in: [4ae506f66c] user: mistachkin branch: tkt-414d10346b, size: 21266
2013-09-26
13:13
merge novem

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

2013-09-10
18:46
[547989] Proposed implementation of the change described in the comments of the bug report. file: [3be7a0124f] check-in: [942397a2a7] user: dkf branch: bug-547989, size: 18554
2013-08-02
10:33
merge trunk file: [3d6dbc38c7] check-in: [396ccb299c] user: jan.nijtmans branch: novem, size: 17477
2013-06-21
12:13
Merge trunk. Remove TclpReaddir and TclpInetNtoa from internal stub table: It's not used anywhere any more. file: [757aad7aa7] check-in: [6606e36376] user: jan.nijtmans branch: novem, size: 17572
11:57
Don't use TclpInetNtoa any more, use inet_ntoa in stead. Since IP6 support it's even not necessary any more (except for fake-rfc2553, but mutexes are used here already) , but it's in the internal stub table so we cannot remove it until 9.0 file: [c0031b4a0e] check-in: [390eff66e1] user: jan.nijtmans branch: trunk, size: 18554
2013-01-06
16:34
merge novem file: [2ab3159ec0] check-in: [fef6277219] user: mig branch: mig-strip-brutal, size: 18490
2013-01-04
16:56
getting out of the mem allocator biz file: [7100a1569d] check-in: [f7a7c5653d] user: mig branch: mig-strip-brutal, size: 18534
2012-11-26
15:31
merge trunk file: [54699cb450] check-in: [cdc837ae05] user: mig branch: mig-alloc-reform, size: 18513
2012-11-16
14:15
More work done. Still I am finding places where int should be size_t and reverse. file: [480b09ddbb] check-in: [d348e679f7] user: jan.nijtmans branch: novem-64bit-sizes, size: 18528
2012-08-20
06:49
remove unnecessary struct names, which only pollute the "struct" namespace for te compiler. file: [f80ab9f10b] check-in: [db442914c7] user: jan.nijtmans branch: jn-no-struct-names, size: 18490
2012-06-08
13:25
3530533 Centralize #include <pthread.h> in the tclUnixPort.h header so that old unix systems that need inclusion in all compilation units are supported. Update autogoo for gettimeofday(). Thanks Joe English. file: [4f97eea401] check-in: [a790f23b77] user: dgp branch: trunk, size: 18534
13:00
3530533 Centralize #include <pthread.h> in the tclUnixPort.h header so that old unix systems that need inclusion in all compilation units are supported. file: [e0f6230da9] check-in: [bd718144bf] user: dgp branch: core-8-5-branch, size: 20439
2011-05-07
19:53
merge trunk file: [c3be6f6752] check-in: [241f36be4b] user: mig branch: mig-alloc-reform, size: 18535
2011-04-28
13:30
minor comment fix file: [0281f89c62] check-in: [24205766d9] user: jan.nijtmans branch: trunk, size: 18556
13:29
minor comment fix file: [b97a1f2509] check-in: [1ce7439657] user: jan.nijtmans branch: core-8-5-branch, size: 20461
13:28
minor comment fix file: [6137df9851] check-in: [f8646598bd] user: jan.nijtmans branch: core-8-4-branch, size: 21845
2011-03-18
12:54
development branch for allocator changes file: [bd044731ea] check-in: [80a014ef05] user: mig branch: mig-alloc-reform, size: 18562
2011-03-15
14:53
fix so that thread blocks are recycled when a thread dies (HAVE_FAST_TSD), just keep the original stuff file: [3a0f8d40aa] check-in: [536791f045] user: mig branch: mig-alloc-reform, size: 18529
14:15
reorganisation towards (hopefuly) defining the allocator and/or purify at app start time; for now it's still at compile time, and tclNativeAlloc.c is still not complete file: [4452e9306d] check-in: [d0f1659e90] user: mig branch: mig-alloc-reform, size: 18564
01:04
let zippy use fast __thread TSD; enable with -DHAVE_FAST_TSD, the corresponding autoconferry is missing file: [6b09c20914] check-in: [b598f4b149] user: mig branch: mig-alloc-reform, size: 18618
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: [5286647721] check-in: [5574bdd262] user: dkf branch: trunk, size: 18583
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: [50e0d36e99] check-in: [c64f310d38] user: dgp branch: trunk, size: 18638
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: [4c23920d23] check-in: [79367df0f0] user: dgp branch: core-8-5-branch, size: 20488
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: [dc63072919] check-in: [90b4acd7bd] user: dgp branch: core-8-4-branch, size: 21872
2010-12-06
14:52
@1400, undo of 177 (TclpThreadGetStacksize). file: [79ef005bbe] check-in: [861c844a13] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 21549
2010-11-23
13:11
Jump. file: [6bedefad87] check-in: [f8ff91db3f] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 18715
2010-11-22
11:46
Next @175 file: [a7045b2d0e] check-in: [8cd8dc3fc1] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 18565
2010-11-18
17:15
Next, @134 file: [71c57ad3e7] check-in: [7fc03e57d1] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 21399
2010-09-17
12:55
Merge from HEAD to rmax-ipv6-branch file: [3106e2f4d0] check-in: [70c6ac9692] user: rmax branch: rmax-ipv6-branch, size: 18715
2010-06-16
16:17
merge file: [cf2b4b1372] check-in: [7f6e340d45] user: dgp branch: dgp-refactor, size: 18715
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: [0f6648763b] check-in: [8567ee888a] user: nijtmans branch: trunk, size: 18715
2010-03-06
03:40
merge updates file: [117e1e1b34] check-in: [f1f1ac161b] user: dgp branch: dgp-refactor, size: 18714
2010-03-05
14:34
Code Audit results: * use do { ... } while (0) in macros * avoid shadowing one local variable with another * use clearer 'foo.bar++;' instead of '++foo.bar;' where result not required (i.e., semantically equivalent) * follow Engineering Manual rules on spacing and declarations file: [ce1c4c2843] check-in: [4d8a4f639d] user: dkf branch: trunk, size: 18709
2009-08-17
14:00
merge updates from HEAD file: [5f4bb34acd] check-in: [8050b8ab89] user: dgp branch: dgp-refactor, size: 18565
2009-08-16
10:20
const addition (pkge.c) Use <pthread.h> in stead of "pthread.h" Eliminate some more gcc warnings file: [71c450006e] check-in: [4c68b5bfd2] user: nijtmans branch: trunk, size: 18565
2008-08-14
15:16
merge updates from HEAD file: [be2d490eeb] check-in: [a319078cad] user: dgp branch: dgp-refactor, size: 18565
2008-08-13
23:08
* unix/tclUnixThrd.c: remove unused TclpThreadGetStackSize() * generic/tclInt.h: and related ifdefs and autoconf tests. * unix/tclUnixPort.h: [Bug 2017264] (jenglish) * unix/tcl.m4:
file: [400503f8d4] check-in: [626938b63a] user: das branch: trunk, size: 18560
2008-07-29
20:13
merge updates from (near) HEAD file: [07701439c6] check-in: [f51e3a3c72] user: dgp branch: dgp-refactor, size: 21399
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: [96a7e5c873] check-in: [7ade6e690e] user: nijtmans branch: trunk, size: 21399
2008-05-11
04:22
merge updates from HEAD file: [66e1af23b0] check-in: [b084fd8e3a] user: dgp branch: dgp-refactor, size: 21406
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: [1a468f08f4] check-in: [2fd77728e6] user: georgeps branch: trunk, size: 21406
2008-01-23
16:42
merge updates from HEAD file: [c422b2193b] check-in: [013cce9562] user: dgp branch: core-stabilizer-branch, size: 20564
2008-01-14
21:42
merge updates from HEAD file: [9d34c2ee5e] check-in: [174b14b2a3] user: dgp branch: dgp-refactor, size: 20565
2008-01-11
11:53
* unix/tclUnixThrd.c (TclpThreadGetStackSize): restore stack checking functionality in freebsd [Bug 1850424]
file: [daf5c3d362] check-in: [9d23069943] user: msofer branch: trunk, size: 20563
10:54
* unix/tclUnixThrd.c (TclpThreadGetStackSize): fix for crash in freebsd [Bug 1860425].
file: [b4d02e3da9] check-in: [d0b63bd24a] user: msofer branch: trunk, size: 20655
2007-12-13
15:22
merge stable branch onto HEAD file: [6894e34b77] check-in: [d1f7550cd9] user: dgp branch: trunk, size: 20670
2007-12-06
06:51
merge updates from HEAD file: [bda4027d96] check-in: [6f3a8a0d9e] user: dgp branch: dgp-refactor, size: 20675
2007-11-26
19:43
merge updates from HEAD file: [8cff5ce30c] check-in: [6bce9b807c] user: dgp branch: core-stabilizer-branch, size: 20674
19:11
* generic/tclBasic.c: * generic/tclInt.h: * unix/tclUnixInit.c: * unix/tclUnixThrd.c: Fix stack checking via workaround for bug in glibc's pthread_attr_get_np, patch from [Bug 1815573]. Many thanks to Sergei Golovan (aka Teo) for detecting the bug and helping diagnose and develop the fix.
file: [af93ec0dd7] check-in: [58c6af7834] user: msofer branch: trunk, size: 20673
2007-11-21
06:30
Merge updates from 8.5b3 release file: [238e3bf702] check-in: [c60ad186f4] user: dgp branch: core-stabilizer-branch, size: 19257
2007-11-16
11:17
Silence some warnings. file: [8d982fe6ab] check-in: [0f280af2bd] user: dkf branch: trunk, size: 19253
2007-05-30
03:31
merge updates from HEAD file: [b5cff0f7fc] check-in: [3084f08b53] user: dgp branch: core-stabilizer-branch, size: 19232
03:27
merge updates from HEAD file: [87ce6eddb0] check-in: [936c4cad38] user: dgp branch: dgp-refactor, size: 19233
2007-05-29
23:35
* unix/tclUnixThrd.c (Tcl_JoinThread): fix for 64-bit handling of pthread_join exit return code storage. [Bug 1712723]
file: [1d65853178] check-in: [8010f24374] user: hobbs branch: core-8-4-branch, size: 21927
23:35
* unix/tclUnixThrd.c (Tcl_JoinThread): fix for 64-bit handling of pthread_join exit return code storage. [Bug 1712723]
file: [4d5125d90d] check-in: [39de7aa164] user: hobbs branch: trunk, size: 19230
2007-04-08
14:58
Merge updates from HEAD; may not build file: [12533ebeec] check-in: [8dc7079178] user: dgp branch: dgp-refactor, size: 19141
2006-12-19
16:25
supply missing RCS line file: [aeedb71afd] check-in: [ea6501a730] user: dgp branch: trunk, size: 19136
16:14
Fix [Bug 1618838] file: [d85b388130] check-in: [4cba13e336] user: dkf branch: trunk, size: 19119
04:35
* unix/tclUnixThrd.c (TclpInetNtoa): fix for 64 bit.
file: [8f4b726f76] check-in: [0c2541e057] user: das branch: core-8-4-branch, size: 21850
04:35
* unix/tclUnixThrd.c (TclpInetNtoa): fix for 64 bit.
file: [ab61abe01c] check-in: [4dd5a218c1] user: das branch: trunk, size: 18996
04:34
* unix/tclUnixThrd.c (TclpInetNtoa): fix for 64 bit.
file: [ecc5fc6bec] check-in: [7f3db43666] user: das branch: core-8-4-branch, size: 21855
04:33
* unix/tclUnixThrd.c (TclpInetNtoa): fix for 64 bit.
file: [c0b64c2e81] check-in: [537f5091a7] user: das branch: trunk, size: 18996
04:14
* unix/tclUnixThrd.c (TclpInetNtoa): fix for 64 bit.
file: [50f2962db5] check-in: [e50d563595] user: das branch: core-8-4-branch, size: 21841
04:13
* unix/tclUnixThrd.c (TclpInetNtoa): fix for 64 bit.
file: [f80c96df16] check-in: [06c6e79841] user: das branch: trunk, size: 18982
2006-11-13
08:23
* generic/tclCompExpr.c: fix gcc warnings about 'cast to/from * generic/tclEncoding.c: pointer from/to integer of different * generic/tclEvent.c: size' on 64-bit platforms by casting to * generic/tclExecute.c: intermediate types intptr_t/uintptr_t * generic/tclHash.c: via new PTR2INT(), INT2PTR(), * generic/tclIO.c: PTR2UINT() and UINT2PTR() macros. * generic/tclInt.h: [Patch 1592791] * generic/tclProc.c: * generic/tclTest.c: * generic/tclThreadStorage.c: * generic/tclTimer.c: * generic/tclUtil.c: * unix/configure.in: * unix/tclUnixChan.c: * unix/tclUnixPipe.c: * unix/tclUnixPort.h: * unix/tclUnixTest.c: * unix/tclUnixThrd.c:
* unix/configure: autoconf-2.59 * unix/tclConfig.h.in: autoheader-2.59
file: [7f1b75f329] check-in: [8562d10e43] user: das branch: trunk, size: 19049
2006-10-16
18:41
* unix/tclUnixThrd.c (TclpThreadGetStackSize): Darwin: fix for main thread, where pthread_get_stacksize_np() returns incorrect info.
* macosx/GNUmakefile: don't redo prebinding of non-prebound binaires.
file: [a7aba98686] check-in: [8ff3943783] user: das branch: trunk, size: 19048
2006-10-13
04:54
* unix/tclUnixThrd.c (TclpThreadGetStackSize): on Darwin, use * unix/tcl.m4: pthread_get_stacksize_np() API to get thread stack size. * unix/configure: autoconf-2.59 * unix/tclConfig.h.in: autoheader-2.59
file: [6b4c74dd4b] check-in: [49aee9c202] user: das branch: trunk, size: 18834
2006-08-29
05:33
Fix for stack.test failures on FreeBSD file: [dd0bbb5912] check-in: [cad4b8fc35] user: mistachkin branch: trunk, size: 18730
2005-11-02
23:26
ANSIfy file: [30fcae80fd] check-in: [19a0a6a899] user: dkf branch: trunk, size: 18725
2005-08-11
22:06
radical refactoring of thread storage to untangle dependencies file: [9ac8ba13d6] check-in: [be83fe62c8] user: kennykb branch: trunk, size: 18842
2005-07-20
23:16
Getting more systematic about style file: [547ebbfaa6] check-in: [0c5cea4d81] user: dkf branch: trunk, size: 22999
2005-07-08
01:06
* unix/tcl.m4, unix/configure: Backported [Bug 1095909], removing * unix/tclUnixPort.h: any use of readdir_r as it is not * unix/tclUnixThrd.c: necessary and just confuses things.
file: [e82f883edb] check-in: [75375ce555] user: hobbs branch: core-8-4-branch, size: 21920
2005-04-16
08:01
Fixed TclpFreeAllocCache() 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: [b3d820d7e1] check-in: [1ba74d7ab7] user: vasiljevic branch: trunk, size: 23072
2005-04-07
11:28
Fixed TclpFreeAllocCache() 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: [6e22d9bc05] check-in: [9e2b7b1539] user: vasiljevic branch: core-8-4-branch, size: 22887
2005-01-11
11:07
Comment typo fix file: [d918af75f7] check-in: [ef51c33d5d] user: dkf branch: trunk, size: 22936
2005-01-09
19:31
Remove readdir_r() and related #ifdeffery (see #1095909). Don't check for HAVE_READDIR_R. Regenerated configure script. file: [eaa2fcd8d8] check-in: [7345fd05ed] user: jenglish branch: trunk, size: 22936
2004-11-22
22:48
* unix/configure: Regen. * unix/tcl.m4 (SC_ENABLE_THREADS): Check for a 2 argument version of readdir_r that is known to exists under IRIX 5.3. * unix/tclUnixThrd.c (TclpReaddir): Use either 2 arg or 3 arg version of readdir_r. [Bug 1001325]
file: [e88207229f] check-in: [63b8c61faa] user: mdejong branch: core-8-4-branch, size: 22751
22:40
* unix/configure: Regen. * unix/tcl.m4 (SC_ENABLE_THREADS): Check for a 2 argument version of readdir_r that is known to exists under IRIX 5.3. * unix/tclUnixThrd.c (TclpReaddir): Use either 2 arg or 3 arg version of readdir_r. [Bug 1001325]
file: [c36bb07c3f] check-in: [de53d33e5e] user: mdejong branch: trunk, size: 23903
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: [c06e435754] check-in: [6d824cc2bb] user: andreas_kupries branch: core-8-4-branch, size: 22605
2004-08-10
19:40
Changed handling of the returned thread ID since broken on 64-bit systems (Cray). Thanks to Rob Ratcliff for reporting the bug. file: [da26937cb8] check-in: [942144282c] user: vasiljevic branch: trunk, size: 23757
19:35
Changed handling of the returned thread ID since broken on 64-bit systems (Cray). Thanks to Rob Ratcliff for reporting the bug. file: [c4fe5fa988] check-in: [af8752bc56] user: vasiljevic branch: core-8-4-branch, size: 22543
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: [013fa8014a] check-in: [8a65a24648] user: hobbs branch: trunk, size: 23713
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: [464a0fecaa] check-in: [12bdd26d68] user: hobbs branch: core-8-4-branch, size: 22499
2004-07-15
22:04
* unix/tclUnixThrd.c (TclpFinalizeMutex): Accepted Joe Mistachkin's patch for [Tcl SF Bug 99453], closing leakage of mutexes. They were not destroyed properly upon finalization. file: [ca741063f9] check-in: [f4cc086246] user: andreas_kupries branch: trunk, size: 23205
22:04
* unix/tclUnixThrd.c (TclpFinalizeMutex): Accepted Joe Mistachkin's patch for [Tcl SF Bug 99453], closing leakage of mutexes. They were not destroyed properly upon finalization. file: [b603bf25bd] check-in: [011b86e209] user: andreas_kupries branch: core-8-4-branch, size: 21991
2004-06-23
00:24
Version of [Patch 746578] that works with Linux and is likely to work elsewhere file: [bd13a7b3c7] check-in: [f7e8a16883] user: dkf branch: trunk, size: 23163
2004-06-22
13:08
Integrated fix for Tcl Bug #770053 from core-8-4-branch file: [d2c7e83f03] check-in: [9f739d40a1] user: vasiljevic branch: trunk, size: 21948
11:55
Corrected Tcl Bug #770053 file: [88756b0e01] check-in: [450a52effb] user: vasiljevic branch: core-8-4-branch, size: 21949
2004-05-27
13:18
Made compiling with -Wstrict-prototypes -Wmissing-prototypes much cleaner. Also added support for [FRQ 951168] but left that switched off by default. file: [236fb65fc7] check-in: [3c862df4ab] user: dkf branch: trunk, size: 21948
2004-05-14
21:43
2004-05-14 Kevin B. Kenny <[email protected]>
* generic/tclInt.decls: Promoted TclpLocaltime and TclpGmtime * generic/tclIntDecls.h: from Unix-specific stubs to the generic * generic/tclIntPlatDecls.h: internal Stubs table. Reran 'genstubs' * generic/tclStubInit.c: * unix/tclUnixPort.h:
* generic/tclClock.c: Changed a buggy 'GMT' timezone specification to the correct 'GMT0'. [Bug #922848]
* unix/tclUnixThrd.c: Moved TclpGmtime and TclpLocaltime to unix/tclUnixTime.c where they belong.
* unix/tclUnixTime.c (TclpGmtime, TclpLocaltime, TclpGetTimeZone, ThreadSafeGMTime [removed], ThreadSafeLocalTime [removed], SetTZIfNecessary, CleanupMemory): Restructured to make sure that the same mutex protects all calls to localtime, gmtime, and tzset. Added a check in front of those calls to make sure that the TZ env var hasn't changed since the last call to tzset, and repeat tzset if necessary. [Bug #942078] Removed a buggy test of the Daylight Saving Time information in 'gettimeofday' in favor of applying 'localtime' to a known value. [Bug #922848]
* tests/clock.test (clock-3.14): Added test to make sure that changes to $env(TZ) take effect immediately.
* win/tclWinTime.c (TclpLocaltime, TclpGmtime): Added porting layer for 'localtime' and 'gmtime' calls.
file: [163da14f85] check-in: [44753d7a62] user: kennykb branch: trunk, size: 21936
21:41
2004-05-14 Kevin B. Kenny <[email protected]>
* generic/tclInt.decls: Promoted TclpLocaltime and TclpGmtime * generic/tclIntDecls.h: from Unix-specific stubs to the generic * generic/tclIntPlatDecls.h: internal Stubs table. Reran 'genstubs' * generic/tclStubInit.c: * unix/tclUnixPort.h:
* generic/tclClock.c: Changed a buggy 'GMT' timezone specification to the correct 'GMT0'. [Bug #922848]
* unix/tclUnixThrd.c: Moved TclpGmtime and TclpLocaltime to unix/tclUnixTime.c where they belong.
* unix/tclUnixTime.c (TclpGmtime, TclpLocaltime, TclpGetTimeZone, ThreadSafeGMTime [removed], ThreadSafeLocalTime [removed], SetTZIfNecessary, CleanupMemory): Restructured to make sure that the same mutex protects all calls to localtime, gmtime, and tzset. Added a check in front of those calls to make sure that the TZ env var hasn't changed since the last call to tzset, and repeat tzset if necessary. [Bug #942078] Removed a buggy test of the Daylight Saving Time information in 'gettimeofday' in favor of applying 'localtime' to a known value. [Bug #922848]
* tests/clock.test (clock-3.14): Added test to make sure that changes to $env(TZ) take effect immediately.
* win/tclWinTime.c (TclpLocaltime, TclpGmtime): Added porting layer for 'localtime' and 'gmtime' calls.
file: [107ea6d82e] check-in: [27f78ca91b] user: kennykb branch: core-8-4-branch, size: 21949
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: [b38d8ee151] check-in: [f350fff007] user: davygrvy branch: core-8-4-branch, size: 23001
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: [055f8c03c0] check-in: [4b5a57a7d3] user: davygrvy branch: trunk, size: 22988
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: [f615334cf2] check-in: [2e5b18c85c] user: dgp branch: trunk, size: 22290
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: [acfbcda3a8] check-in: [524a53e3b3] user: davygrvy branch: trunk, size: 22311
2003-05-13
10:16
fix for [Bug 732477] file: [208f38eeb6] check-in: [386a7f85ff] user: mistachkin branch: trunk, size: 22307
09:57
fix for [Bug 732477] file: [fb2140d19e] check-in: [5cf8febf64] user: mistachkin branch: core-8-4-branch, size: 22303
2003-05-12
08:41
Corrected the Tcl bug #723502 file: [c1d1577227] check-in: [dfd2222f30] user: vasiljevic branch: core-8-4-branch, size: 22276
2003-02-20
00:34
* unix/tclUnixThrd.c (TclpReaddir): * unix/tclUnixPort.h: update to Bug 689100 patch to ensure that there is a defined value of MAXNAMLEN (aka NAME_MAX in POSIX) and that we have some buffer allocated.
file: [ea52c090c7] check-in: [068379cc78] user: hobbs branch: trunk, size: 22277
2003-02-19
01:05
* unix/tclUnixThrd.c (TclpReaddir): reduce size of name string in tsd to NAME_MAX instead of PATH_MAX. [Bug #689100] (waters)
file: [e6d79306ee] check-in: [cc09b38497] user: hobbs branch: trunk, size: 22349
2002-08-06
01:49
* generic/tclInt.decls: * unix/tclUnixThrd.c: Added stubs and implementations for non-threaded build for the tclUnixThrd.c procs TclpReaddir, TclpLocaltime, TclpGmtime and TclpInetNtoa. Fixes link errors in stubbed & threaded extensions that include tclUnixPort.h and use any of the procs readdir, localtime, gmtime or inet_ntoa (e.g. TclX 8.4) [Bug 589526] * generic/tclIntPlatDecls.h: * generic/tclStubInit.c: Regen.
file: [ab43427462] check-in: [23c61ff933] user: das branch: trunk, size: 22304
2002-06-28
09:56
Changed all the Tcl_Platform* symbols to TclOS*; they weren't public so their names were really badly chosen. Also prevented a double-#def. file: [561030550d] check-in: [049b4fa9e2] user: dkf branch: trunk, size: 21835
2002-06-06
17:37
* unix/tclUnixThrd.c (TclpReaddir, TclpLocaltime, TclpGmtime): added mutex wrapped calls to readdir, localtime & gmtime in case their thread-safe *_r counterparts are not available. * unix/tcl.m4: added configure check for readdir_r * unix/tcl.m4 (Darwin): set TCL_DEFAULT_ENCODING to utf-8 on MacOSX (where posix file apis expect utf-8, not iso8859-1). * unix/configure: regen * unix/Makefile.in: set DYLD_LIBRARY_PATH in parallel to LD_LIBRARY_PATH for MacOSX dynamic linker. * generic/tclEnv.c (TclSetEnv): fix env var setting on MacOSX (adapted from patch #524352 by jkbonfield).
file: [3c1db83fe0] check-in: [fcf531e83a] user: das branch: trunk, size: 21756
2002-04-23
05:41
* 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: [e298514b08] check-in: [329bb4c295] user: hobbs branch: trunk, size: 20752
2002-02-15
14:28
TIP#72 implementation. See ChangeLog for details. This version builds clean on Solaris/SPARC, with GCC and CC, both with and without threads and both in 32-bit and 64-bit mode. file: [1e9607bbe0] check-in: [8d82de1905] user: dkf branch: trunk, size: 19800
2002-02-08
09:33
* unix/tclUnixPort.h: * unix/tclUnixThrd.c: added thread-safe versions of readdir, localtime, gmtime and inet_ntoa for threaded build. (jgdavidson)
file: [93dcc64536] check-in: [66e9f4d6b4] user: hobbs branch: trunk, size: 19791
2001-11-21
02:36
added TIP#73 patch #483500 from Kevin Kenny. This deprecates TclpGetTime in favor of new Tcl_GetTime. file: [deed6cb66e] check-in: [ad0e26f63b] user: hobbs branch: trunk, size: 18292
2001-04-03
22:54
see backport log in ChangeLog for specific file backports from 8.4aCVS file: [f8dd829803] check-in: [6defc375da] user: hobbs branch: core-8-3-1-branch, size: 17489
2001-03-29
19:29
* unix/tclUnixThrd.c (Tcl_ConditionWait): fixed handling of timeout for threads (corrects excessive CPU usage issue for Tk on Unix in threaded Tcl environment). (ruppert) [Bug #411603]
file: [75a320b347] check-in: [bc12cdd261] user: hobbs branch: trunk, size: 18292
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-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: [e18a0ae236] check-in: [cdf262856d] user: kupries branch: trunk, size: 18046
2000-04-25
17:56
* unix/tclUnixThrd.c: removed {}s around PTHREAD_MUTEX_INITIALIZER [Bug: 5254]
file: [6ccdf9e13d] check-in: [aa8d40b8f1] user: hobbs branch: trunk, size: 17243
2000-04-24
23:32
* unix/tclUnixNotfy.c (Tcl_FinalizeNotifier, NotifierThreadProc): added write of 'q' into triggerPipe for notifier in threaded case, so that Tcl doesn't hang when children are still running [Bug: 4139]
* unix/tclUnixThrd.c (Tcl_MutexLock): minor comment fixes.
file: [41f5d2b553] check-in: [b63233fd7f] user: hobbs branch: trunk, size: 17249
2000-04-11
01:04
Fixed compiler warnings file: [ab6cfd6247] check-in: [7f42a656b6] user: welch branch: trunk, size: 17239
2000-04-09
21:14
* unix/tclUnixThrd.c (Tcl_CreateThread): moved TCL_THREADS ifdef inside of func as it is declared for non-threads builds as well. In the non-threads case, it always returns TCL_ERROR (couldn't create thread).
file: [02528bfdb1] check-in: [26ed7e69c3] user: hobbs branch: trunk, size: 17233
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: [f0274e7e9d] check-in: [51f6c167f6] user: kupries branch: trunk, size: 17161
2000-01-12
11:13
* tests/unixFCmd.test: * unix/tclUnixFCmd.c: added support for symbolic permissions setting in SetPermissionsAttribute (file attr $file -perm ...) [Bug: 3970]
* tests/expr.test: * unix/Makefile.in: * unix/configure.in: * unix/tcl.m4: strtod bug on Tru64 [Bug: 3378] and added tests to prevent unnecessary chmod +x in sources while installing, as well as more intelligent setsockopt/gethostbyname checks [Bug: 3366, 3389]
* unix/tclUnixThrd.c: added compile time support (through use of the TCL_THREAD_STACK_MIN define) for increasing the default stack size for a thread. [Bug: 3797, 1966]
file: [51a5e31e74] check-in: [21ead6fbd0] user: hobbs branch: trunk, size: 16771
1999-08-10
17:17
Fixed level of indirection in Tcl_GetAllocMutex file: [8188116d9b] check-in: [493612de83] user: welch branch: trunk, size: 15934
02:42
Added Tcl_GetAllocMutex for use by tclAlloc.c and tclCkalloc.c file: [b8ce1f5cd7] check-in: [a5ed5c1af7] user: welch branch: trunk, size: 15880
1999-07-31
01:55
* unix/tclUnixThrd.c: Applied patch to fix threads on Irix 6.5. Patch from James Dennett. [Bug: 2450]

* tests/info.test: Enable test for tclParse.c change (info complete). file: [8c2a1febf6] check-in: [59e2b0685d] user: redman branch: trunk, size: 15780

1999-06-21
19:02
* unix/tclUnixThrd.c (TclpThreadCreate): Fixed memory leak where thread attributes were not being released. [Bug: 2254] file: [15b4630462] check-in: [d3a5225279] user: stanton branch: trunk, size: 15689
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-01
23:23
Deleted unused code. file: [2f6d07b00a] check-in: [e6c75f634f] user: welch branch: core-8-1-branch-old, size: 15612
1999-03-09
02:37
* generic/tcl.h: Moved Tcl_Mutex, etc. macros above the inclusion of tclDecls.h to avoid macro conflicts.

* generic/tclInt.h: * generic/regc_color.c: * generic/regcomp.c: * generic/tclCmdIL.c: * generic/tclCmdAH.c: * generic/tclIOCmd.c: * generic/tclParse.c: * generic/tclStringObj.c: * unix/tclUnixNotfy.c: Cleaned up various compiler warnings, eliminated UCHAR bugs.

* unix/tclUnixNotfy.c: * unix/tclUnixThrd.c: * generic/tclThreadTest.c: * mac/tclMacThrd.c: Changed TclpCondition*() to Tcl_Condition*(). file: [7ac9dc522f] check-in: [a1684dfa8e] user: stanton branch: dev-8-1-stubs-branch, size: 16323

1998-12-12
01:36
Minor change to Lock Declarations to use TCL_DECLARE_MUTEX macro, published in tcl.h. file: [8fb8088cdc] check-in: [c778c9ef5e] user: lfb branch: core-8-1-branch-old, size: 16323
1998-09-21
23:39
Added: Added contents of Tcl 8.1a2 file: [20f46f013d] check-in: [8c56dc8868] user: stanton branch: core-8-1-branch-old, size: 16322