Tcl Source Code

All files named ”generic/tclIO.c”
Login

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

History for generic/tclIO.c

2026-10-30
08:26
Fix [815e24]: missing locks, when transferring a channel to another thread. Also change *.tcl.tk to *.tcl-lang.org file: 4cbd4c83d3 check-in: [f7eccf3f2e] user: jan.nijtmans branch: core-8-6-branch, size: 317115
07:43
Fix [815e24]: missing locks, when transferring a channel to another thread file: 42f3a7a464 check-in: [e21588b011] user: jan.nijtmans branch: core-9-0-branch, size: 324088
2026-10-26
12:47
Merge main file: f803c26a00 check-in: [cdf30e11a5] user: oehhar branch: tip-758, size: 323864
2026-10-18
16:43
Fix [69b4f7eb37]: [gets] of a line longer than 2 GB panicked in Tcl_SetObjLength, returned a negative length with -translation binary, or crashed when a \r ended a buffer. Use Tcl_Size for the offsets and counts in Tcl_GetsObj, TclGetsObjBinary and FilterInputBytes, and do not overflow when doubling the buffer. file: 477623de50 check-in: [34cbbe86a5] user: serhiy.storchaka branch: gets-long-lines, size: 323830
2026-10-17
09:12
Fix [6141c15186]: a transform on a non-seekable channel lost the buffered input when written to. WillWrite() discards the input only if seeking back succeeded, and the transform seek fails before clearing its buffers when the channel below cannot seek. file: ce75999801 check-in: [b31ec18fbe] user: serhiy.storchaka branch: transform-write-keep-input, size: 323932
2026-10-16
21:40
Fix [4c5a98f5a0]: gets with -translation auto merged lines after a "\r" at the end of a read. Reset INPUT_SAW_CR as soon as data follows the "\r", and set it again if the skipped "\n" is pushed back, so that the case of [b3977d199b] still works. file: 26bc501942 check-in: [7d959464b9] user: serhiy.storchaka branch: gets-auto-saw-cr, size: 324145
21:29
Fix [2b6b0a5729]: writes accepted after non-blocking chan close write. Tcl_GetChannelMode() does not report the write side once CHANNEL_CLOSEDWRITE is set, while the queued output is still flushed in the background. file: 6efeff934e check-in: [9a8c807d9f] user: serhiy.storchaka branch: chan-close-write-pending, size: 323979
2026-10-13
13:22
Fix [815e246806]: transferring a channel to another thread from its own file event handler could panic with "Channel released more than preserved": both threads changed the reference count of the channel. Protect it with a mutex. file: ddb55bb600 check-in: [bb3d0c3db9] user: serhiy.storchaka branch: channel-refcount-thread-safe, size: 324306
2026-10-01
08:07
merge trunk file: 09494f1596 check-in: [a548a818ba] user: dkf branch: tip-757, size: 322832
2026-09-07
14:11
Use TclStackAlloc for more places. Requires interp and right lifetime to be worthwhile... file: d61d10269c check-in: [5aaa7cb9e1] user: dkf branch: use-stackalloc-more, size: 323731
2026-08-30
11:30
Spruce up tclIO.c in a few spots file: 8665a1518f check-in: [903c8c643f] user: dkf branch: main, size: 323726
2026-08-23
11:04
Error string compaction file: 9839bdefa4 check-in: [88c80c8187] user: dkf branch: tip-757, size: 322828
2026-08-15
14:56
More errors through the new API functions file: 9c6754ef1f check-in: [b4ed13ac7d] user: dkf branch: tip-757, size: 323077
2026-08-09
11:41
merge trunk file: a0b1c58dee check-in: [d54b3787e4] user: dkf branch: tip-757, size: 323673
11:38
Error messages almost all generated via Tcl_PrintfResult family file: 0a0c68137d check-in: [4b4b6ea188] user: dkf branch: tip-757, size: 323479
2026-07-29
06:43
Proposed fix for [6e82720e14]. file: bb1479f8ea check-in: [d90ac91a23] user: apnadkarni branch: bug-6e82720e, size: 323722
2026-07-25
17:15
commentary and descriptive variable file: bfc0014955 check-in: [472a5fdb9a] user: davygrvy branch: tip-758, size: 323666
2026-07-24
20:16
updated fileevent documentation file: 69a08c1721 check-in: [28e3bdc4a4] user: davygrvy branch: tip-758, size: 323558
2026-07-23
23:16
initial change for TIP #758 file: f9faadbab4 check-in: [99abe63bd2] user: davygrvy branch: tip-758, size: 323552
2026-07-17
06:50
Use of TIP 757 in many places file: cd51939db5 check-in: [2237c55faf] user: dkf branch: tip-757-use, size: 322664
2026-06-18
14:56
Spacing file: 2312403bdc check-in: [8b5cde2e94] user: jan.nijtmans branch: main, size: 323528
2026-06-13
15:56
Indentation corrections file: 64bb00db26 check-in: [5728419ce1] user: dkf branch: main, size: 323612
2026-05-29
15:06
Fix [06f19cc4] - Windows socket crash on thread exit. file: d626eec0c1 check-in: [361fb72eaa] user: apnadkarni branch: main, size: 323610
2026-05-28
12:13
Merge 9.0. Formatting file: 36dd346e33 check-in: [8e78be4610] user: jan.nijtmans branch: main, size: 323261
05:48
Proposed fix for [06f19cc401] - Windows sockets segfault file: a3d85f5331 check-in: [92ec89ba2a] user: apnadkarni branch: bug-06f19cc4-with-tcltest, size: 323320
2026-05-27
10:35
Fix [7da6c2d04c]: fileevent poor performance due to shimmering file: ecf029ef03 check-in: [ab9c069c58] user: jan.nijtmans branch: core-9-0-branch, size: 323508
2026-05-26
21:53
Fix [7da6c2d04c]: fileevent poor performance due to shimmering. Same pattern in a lot of other places file: d8dc1aad68 check-in: [c26a56dd82] user: jan.nijtmans branch: main, size: 323261
2026-05-18
16:17
Fix spacing around array references file: 99c38f2f71 check-in: [cd92a921e4] user: dkf branch: main, size: 323273
2026-05-17
15:06
More indentation/spacing corrections; no behaviour changes file: fa0bccc790 check-in: [7c918d5f96] user: dkf branch: main, size: 323272
2026-04-30
14:52
Fix formatting of function-level comments file: ad37917576 check-in: [3dc5544544] user: dkf branch: main, size: 323269
2026-04-26
16:46
Remove unnecessary blank lines file: 5032be911b check-in: [43cdc3cbe1] user: dkf branch: main, size: 323283
2026-03-22
12:57
More whitespace fixes file: dad2923c93 check-in: [c65a7aa504] user: dkf branch: main, size: 323286
2026-03-17
08:48
Code cleanup, more bools file: 9b80d31187 check-in: [bff552ceba] user: jan.nijtmans branch: main, size: 323283
2026-02-23
09:17
Rebase to trunk. More bool's file: d436777a3d check-in: [e0b054564f] user: jan.nijtmans branch: tip-748, size: 323295
2026-02-22
14:18
Remove dead code file: 6cd51dd802 check-in: [86e9c7b4d2] user: apnadkarni branch: main, size: 323299
12:54
Remove excess blocks file: f6365998b5 check-in: [418491afae] user: dkf branch: main, size: 323607
2026-02-14
16:39
General whitespace fixes. No semantic changes. file: fb134cafb4 check-in: [af2708b4ef] user: dkf branch: main, size: 323655
2026-02-09
09:50
Merge trunk file: 9cb166a5ae check-in: [1d0362d66c] user: jan.nijtmans branch: tip-748, size: 323594
2026-02-05
15:17
More clearly mark file-internal functions as static. file: 3952b74ca6 check-in: [0f4b67d30f] user: dkf branch: main, size: 323653
2025-12-29
21:49
Rebase to trunk file: fd9406dece check-in: [4bc0680742] user: jan.nijtmans branch: tip-748, size: 323587
2025-12-28
16:19
Fix some indentation of comments file: e69baa7d4f check-in: [870237637e] user: dkf branch: main, size: 323646
2025-12-21
03:49
TIP 737 file: efc7938d51 check-in: [4b06423d2f] user: apnadkarni branch: main, size: 323647
2025-12-05
13:18
Merge main file: 5ea45a8e5e check-in: [2bceaf56ab] user: apnadkarni branch: tip-737, size: 323639
2025-12-04
17:12
More signature changes to 'bool' file: 667f698676 check-in: [4aeb62cdab] user: jan.nijtmans branch: tip-748, size: 323324
2025-11-30
21:02
Rebase to trunk file: 7d85bad03e check-in: [60b44be862] user: jan.nijtmans branch: tip-626, size: 323391
12:57
Better comments on the Tcl_ObjType instances file: b51a13afd4 check-in: [44e8e5ff97] user: dkf branch: main, size: 323383
2025-11-21
14:19
Yet more restrict of arguments file: 2ef9bbc275 check-in: [0549feab22] user: dkf branch: c11-restrict, size: 323548
2025-11-18
17:15
Work in progress: adding restrict to OUT arguments file: add41d98cb check-in: [f9725400dd] user: dkf branch: c11-restrict, size: 323565
2025-11-17
09:18
merge trunk file: 5f5337fb0b check-in: [8d7f54a91b] user: dkf branch: c11-automarker, size: 323376
2025-11-15
21:56
merge trunk file: 64791d2004 check-in: [459669e809] user: dkf branch: c-std-update, size: 322294
2025-11-14
07:58
Merge trunk file: 396487ce62 check-in: [24b02d5452] user: apnadkarni branch: apn-encoding-refactor, size: 323721
2025-11-13
20:36
Rebase to trunk file: 7670253193 check-in: [c9532e9436] user: jan.nijtmans branch: tip-626, size: 323473
17:08
Merge 9.0 - Bug [e56486a2] - check for negative lengths, not equality with TCL_INDEX_NONE file: 14cc0a6f12 check-in: [8c070cca13] user: apnadkarni branch: main, size: 323465
2025-11-12
11:26
Merge trunk file: 7a93a29ae3 check-in: [10d32e2907] user: apnadkarni branch: apn-encoding-refactor, size: 323763
10:11
Check for negative lengths, not TCL_INDEX_NONE file: 272fb7a106 check-in: [9d50cd1c81] user: apnadkarni branch: bug-e56486a2, size: 323290
2025-11-09
14:12
merge trunk file: fb76a745e9 check-in: [c495403a16] user: dkf branch: c11-printf-result, size: 322972
2025-10-30
16:45
Rebase to trunk file: 7c54f14694 check-in: [ac26ccdcec] user: jan.nijtmans branch: tip-626, size: 323515
2025-10-28
12:41
Yet more bools... file: e9fb3e4a5b check-in: [0517c8f089] user: dkf branch: c11-bool, size: 323725
2025-10-27
15:53
Review: Some other true/false assignments to integer's, which shouldn't be there file: cb0035d89c check-in: [dff235d24e] user: jan.nijtmans branch: c11-bool, size: 323701
14:35
More booleans file: 95da11b5a4 check-in: [c3432ca23e] user: dkf branch: c11-bool, size: 323736
09:07
Extend the use of the FOREACH_HASH macro set Tcl-wide file: 317f36d7b5 check-in: [f4fafa6feb] user: dkf branch: c11-full-hash-foreach, size: 323207
2025-10-24
11:51
Make the bool type available properly (and reduce include duplication). Be careful though; C23 deprecates that header. file: 4353d38060 check-in: [bd8805313f] user: jan.nijtmans branch: core-9-0-branch, size: 323332
2025-10-10
14:11
Tranche 3 of adoption of bool file: dcc0d41706 check-in: [6e7e183bb2] user: dkf branch: c11-bool, size: 323731
2025-10-06
15:52
Make the bool type available properly (and reduce include duplication). Be careful though; C23 deprecates that header. file: 4a99828193 check-in: [fa8b63f0c3] user: dkf branch: c11-bool, size: 323507
2025-10-05
19:26
Tranche 3 of adoption of TclPrintfResult file: e3506b130d check-in: [3aa1ace500] user: dkf branch: c11-printf-result, size: 322992
2025-10-04
11:12
Tranche 1 of adoption of TclPrintfResult file: 08b8d8b89a check-in: [4bd77df23d] user: dkf branch: c11-printf-result, size: 323222
2025-10-03
11:47
Use C11 macros to automatically add a NULL to the end of varargs sequences file: 54cf8df572 check-in: [9c524e00d4] user: dkf branch: c11-automarker, size: 323438
2025-09-26
18:53
merge trunk file: 6a9887fbc0 check-in: [f0dcb3e615] user: dkf branch: c-std-update, size: 322356
2025-09-25
09:33
Remove many unnecessary struct and enum labels. DKF: Please don't do this. The labels enable better information in some IDEs, such as Visual Studio. file: 0c9652e1bc check-in: [7c4fcd0a0c] user: jan.nijtmans branch: struct-enum, size: 323517
2025-09-23
16:11
Rebase to trunk file: 13397045d8 check-in: [02a7870070] user: jan.nijtmans branch: tip-626, size: 323535
2025-09-17
10:16
Clean up some indentation/macros file: 66b9449038 check-in: [b5d21d7b86] user: dkf branch: main, size: 323527
2025-09-04
09:52
Rebase to trunk file: e309cf0482 check-in: [84e8b8343a] user: jan.nijtmans branch: tip-626, size: 323549
08:24
Minor indent fixes file: 2786067b4c check-in: [518418cbc3] user: dkf branch: main, size: 323541
2025-09-02
20:04
Rebase to trunk file: c6389889e8 check-in: [1880179400] user: jan.nijtmans branch: tip-626, size: 323553
2025-09-01
13:53
(partial) merge trunk file: 25f1398560 check-in: [893e489e6e] user: jan.nijtmans branch: tip-626, size: 323382
2025-08-17
11:25
More bools and pieces file: f6fac907c9 check-in: [28a7d957c7] user: dkf branch: c-std-update, size: 322367
2025-08-12
09:06
More booleans. file: 15e647d6eb check-in: [8a9080996d] user: dkf branch: c-std-update, size: 322380
2025-08-04
08:48
More moving of variable declarations file: 1fd497c1e7 check-in: [48e5ad480b] user: dkf branch: c-std-update, size: 322106
2025-08-01
11:48
More moving of variable declarations file: 65ca3f9fd1 check-in: [1d20e4cf45] user: dkf branch: c-std-update, size: 322154
2025-07-19
12:31
More moving of variable declarations file: a76a2d57c0 check-in: [c149575323] user: dkf branch: c-std-update, size: 322570
2025-07-15
13:33
Better handling of the expectations around channel names file: 8e7dcdf4f8 check-in: [7293896dad] user: dkf branch: c-std-update, size: 322558
09:01
Channel names can be NULL during closing file: 862d655660 check-in: [675f1a34ac] user: dkf branch: c-std-update, size: 322678
2025-07-14
14:58
Use macros to reduce number of explicit marker NULLs file: f98cbe4506 check-in: [2b21439624] user: dkf branch: c-std-update, size: 322604
14:26
TclSetErrorCode lets us avoid writing a lot of marker values file: d1dff50f47 check-in: [a29f1f8fab] user: dkf branch: c-std-update, size: 322896
08:11
A bunch of small changes building on previous commits file: d1a8010f98 check-in: [1811f74742] user: dkf branch: c-std-update, size: 322966
2025-07-12
20:58
Define TclPrintfResult() for common pattern in error generation. file: 36a90c01a5 check-in: [70b6205548] user: dkf branch: c-std-update, size: 322984
2025-06-20
13:15
Give each TSD struct its own name as well as the standard ThreadSpecificData file: 40b4c5bdf7 check-in: [8d695d0eb6] user: dkf branch: c-std-update, size: 323567
2025-06-19
13:52
Make more assoc-data keys into named defines, for greater mnemonicity file: 1617d5b961 check-in: [5ff8c360a3] user: dkf branch: main, size: 323545
2025-05-27
06:34
Merge trunk file: 956d98f871 check-in: [e3f06a72c9] user: apnadkarni branch: apn-encoding-refactor, size: 323630
2025-05-23
09:03
Clean up indentation and overlong lines file: 33e3ceb0a1 check-in: [71f3f24f7b] user: dkf branch: main, size: 323374
2025-04-16
14:28
Rebase to TIP #717 file: 03eb3b2130 check-in: [c381d23c19] user: jan.nijtmans branch: tip-626, size: 323360
11:25
Rebase to trunk file: 36bf4133ee check-in: [d6e56ed8bd] user: jan.nijtmans branch: attemptcreatehashentry, size: 323352
2025-04-03
15:55
Rebase to 9.1. Un-deprecate Tcl_CreateCommand() file: 41b8382040 check-in: [ae40ecf95f] user: jan.nijtmans branch: tip-626, size: 323363
2025-03-11
08:30
Rebase to 9.1 file: 92e2e8eb0b check-in: [b56d416a90] user: jan.nijtmans branch: tip-626, size: 323360
2025-03-09
08:08
First attempt at obeying character limits when decoding data. file: 4fdb354423 check-in: [3064261821] user: apnadkarni branch: apn-encoding-refactor, size: 323611
03:40
Added comment for Bug 73bb42fb3f file: 8f3647b34f check-in: [5825e51235] user: apnadkarni branch: main, size: 323355
2025-03-06
13:02
merge 8.7 (fixes another variant of [73bb42fb3f35cd61] BUFFER_PADDING panic) file: bfbc45fc05 check-in: [28539b1154] user: sebres branch: core-9-0-branch, size: 322855
12:50
fixes another variant of [73bb42fb3f35cd61] (BUFFER_PADDING panic) with more tests; increases coverage for profile strict file: 0bfb7a7ca1 check-in: [2c0e7b634b] user: sebres branch: core-8-branch, size: 328818
2025-03-05
05:43
Possible fix for another BUFFER_PADDING panic file: 03a053749e check-in: [1d45e395d9] user: apnadkarni branch: bug-73bb42fb, size: 322836
2025-03-04
16:45
Rebase to 9.1 file: 6f7c04fb61 check-in: [f3e5cd43bf] user: jan.nijtmans branch: tip-626, size: 322786
2025-03-03
09:33
Mostly whitespace fixes, but also a bug in Tcl_SetWideUIntObj file: 8e4096e7e4 check-in: [16c040e40a] user: dkf branch: main, size: 322781
2025-03-02
20:50
Merge 9.1 file: 036c30fb37 check-in: [6f0eac8f6d] user: jan.nijtmans branch: tip-626, size: 322799
15:48
Bunch of whitespace basic fixes. file: eb778647d4 check-in: [809d595b56] user: dkf branch: main, size: 322794
2025-03-01
16:46
Tidier way of handling single-pointer internal representations file: 95b24b5439 check-in: [d7db31fa83] user: dkf branch: inline-func, size: 322232
2025-02-24
22:38
experimental, attempt to fix [b78d94c049af5090]: the state of the closed standard channel must be "half" global file: 07849872bb check-in: [93d9a20635] user: sebres branch: bug-b78d94c049af5090-closed-std-chan, size: 317289
2025-02-11
17:10
More bits and pieces of functions file: cd00578cbe check-in: [f94ca90326] user: dkf branch: inline-func, size: 322386
2025-02-01
20:10
Rebase to 9.1 file: 66f159cd60 check-in: [2b5ed06a93] user: jan.nijtmans branch: tip-626, size: 322805
2025-01-31
20:49
Merge 8.7 file: 8868a7f625 check-in: [58d135625b] user: jan.nijtmans branch: main, size: 322800
17:40
(cherry-pick): Ticket [73bb42fb3f] Panic "Buffer Underflow, BUFFER_PADDING not enough" due to not checked encoding decode result. Fix some indenting (spacing) in testcases (all backported from 9.0) file: 53e1f5c0d8 check-in: [b5d5968215] user: jan.nijtmans branch: core-8-branch, size: 328763
13:38
Merge 9.1 file: 92aa7879ed check-in: [6f12047185] user: jan.nijtmans branch: tip-626, size: 322798
2025-01-24
09:40
More WS... file: a646d197c6 check-in: [0e28e62952] user: dkf branch: whitespace-fix, size: 322405
2025-01-20
14:39
Fixes for many many whitespace infelicities file: d52dcfe2d2 check-in: [ba7d219e65] user: dkf branch: whitespace-fix, size: 322420
2025-01-15
12:39
Bug 73bb42fb3f: check also 2nd encoding conversion and set error as in the one above. This is effective for the bug. file: 8ca5fa3cdb check-in: [db261a5c5d] user: oehhar branch: 73bb42fb3f-panic-buffer, size: 322793
2025-01-13
09:59
More macros for measuring literals at compile time, and a shortcut for adding to error info file: dc0a743047 check-in: [43e1c33e9e] user: dkf branch: dkf-c11-features, size: 321879
2025-01-10
13:01
Add TclPrintfResult() for easy error message generation file: 85055453c2 check-in: [665eb99f69] user: dkf branch: dkf-c11-features, size: 321996
2025-01-09
09:56
Taming Tcl_AppendStringsToObj as well file: 69bfe9a23a check-in: [f8612e12b2] user: dkf branch: dkf-c11-features, size: 322290
09:30
TclSetErrorCode is a macro to end-mark Tcl_SetErrorCode file: b6922ba1e0 check-in: [0e84f9c9df] user: dkf branch: dkf-c11-features, size: 322426
2024-12-23
11:02
Merge 9.0 file: 816504ab65 check-in: [23f668c6ab] user: jan.nijtmans branch: tip-626, size: 322446
2024-12-10
09:38
(cherry-pick )Fix ungrammatical doubling of words in comments file: 0247fd53e7 check-in: [49100cbdd2] user: jan.nijtmans branch: core-8-branch, size: 328461
2024-12-01
23:01
Experiment: simplify internal representation notation file: 071a747657 check-in: [bf30412994] user: jan.nijtmans branch: intrep-simpl, size: 322403
2024-11-21
21:01
Change TclpLoadMemoryGetBuffer/TclpLoadMemory signature using size_t/Tcl_Size file: 293d63800c check-in: [8d3ada78be] user: jan.nijtmans branch: main, size: 322441
2024-10-25
09:56
Merge 9.0 (9.0.0 release) file: 1767665922 check-in: [8523e01f8f] user: jan.nijtmans branch: tip-626, size: 322445
2024-10-07
19:52
Merge [1f19a433ece17043]: Fix ungrammatical doubling of words in comments. file: aab7677a25 check-in: [9a9ba6ce11] user: pooryorick branch: unchained, size: 324700
2024-09-26
01:10
Avoid generating string representation when setting a channel event handler. file: 4405b938aa check-in: [18b8087dc4] user: pooryorick branch: unchained, size: 324709
2024-09-21
08:41
Fix ungrammatical doubling of words in comments file: 2126e61909 check-in: [1f19a433ec] user: dkf branch: main, size: 322440
2024-09-14
11:08
Merge [a4c3f6a3e85e5aef]: Silence compiler warning by replacing size_t with Tcl_Size. file: 2b400e2eb8 check-in: [0752e4d59b] user: pooryorick branch: unchained, size: 324505
2024-09-10
13:26
silence compiler warning file: a2438fbc87 check-in: [7738ae2715] user: dgp branch: core-8-branch, size: 328470
2024-09-09
21:21
Merge trunk; silence compiler warning. file: f6b30392a0 check-in: [330b1226ee] user: dgp branch: core-9-0-0-rc, size: 322449
2024-08-30
20:07
Merge [9b271a3365f2469d]: Missing guard against null interp. file: 2a0a500275 check-in: [4badc16391] user: pooryorick branch: unchained, size: 324503
2024-08-29
20:56
Merge [49bdbf8c78767d51]: TIP 699: Eliminate encoding alias "binary"; provide introspection for binary channels. file: ec34329ffc check-in: [9e6c117868] user: pooryorick branch: unchained, size: 324473
20:07
Merge [68ea14892ffbc136]: Remove dead code / outdated comment. file: 7f5e8e5553 check-in: [58586e428b] user: pooryorick branch: unchained, size: 323556
20:04
Based on [9453353b557018a1]: Replace "channelId" with "channel". file: e0271c9663 check-in: [44b1a5864e] user: pooryorick branch: unchained, size: 323919
09:17
Merge [612cbe4899eb25a2]: Simpler commenting of Tcl_ChannelType instances; make zip channel type const. file: f363e2d836 check-in: [2468f77a5a] user: pooryorick branch: unchained, size: 323921
08:23
Merge [f6c559b364487a9d]: Space before tab is an extremely unlikely to be correct indentation pattern. file: a97a9512f4 check-in: [8a11a89576] user: pooryorick branch: unchained, size: 323917
04:52
Merge [9fa0318dcd9b2067]: Eliminate some unnecessary type-casts. Tcl_GetString -> TclGetString where appropriate. file: f3a59017f8 check-in: [4bcc22caaf] user: pooryorick branch: unchained, size: 323932
2024-08-28
19:49
Merge [b4a4d46ce04a5a62]: Better flag up the oo::Slot class in the docs, add missing method [28d6013ae6]. file: 1578b9203c check-in: [34763ffa19] user: pooryorick branch: unchained, size: 323975
19:34
Merge [1a12a05fa18026db]: Some int -> Tcl_Size. file: b0d2b1d3e3 check-in: [0d11a7363b] user: pooryorick branch: unchained, size: 323976
17:06
Merge [bc2e65239403f994]: Fix [79474c58800cdf94]: 2 segfaults and 2 leaks (common IO handlers and reflected channels). file: 2837984077 check-in: [b40703dc9e] user: pooryorick branch: unchained, size: 323980
16:33
Merge [3a60363aa10ef993]: Clean up a lot of whitespace issues. file: 406674465b check-in: [627781a6db] user: pooryorick branch: unchained, size: 322323
2024-08-27
21:31
Merge [835b1a5566c28af4]: More whitespace cleanup. file: 29c205074e check-in: [fc7d06c8b8] user: pooryorick branch: unchained, size: 322391
14:30
Merge [41ac78bd666f9e43]: "More code cleanup" and "Reserve 2 more stub entries for TIP #648". file: a6b01bc613 check-in: [a04f96987b] user: pooryorick branch: unchained, size: 322419
14:29
Merge [ad350b1aa59f5522]: Indentation. file: 9fa2f3c5a5 check-in: [0c09e2b498] user: pooryorick branch: unchained, size: 322500
14:28
Merge [2ac5b24c75a48396]: Indentation. file: e9e5ceed02 check-in: [83056092fd] user: pooryorick branch: unchained, size: 323459
14:26
Merge [d6f9aacbe7b42f29]: Modify one comment. file: b0e2f43145 check-in: [9f4738b120] user: pooryorick branch: unchained, size: 323459
12:32
Merge [6bab8cce2815cdec]: Indentation changes. file: 8a230d3ee6 check-in: [666fdfd727] user: pooryorick branch: unchained, size: 323478
12:28
Merge [93e55377dc46846b]: "Use Tcl_NewBooleanObj for booleans; we should say what we mean", "Style cleanup, plus added comments on memory management", "Possibly a fix for [080f846fd58958ef]: When updating the interest of a channel, don't schedule the channel handler timer if a nonblocking channel doesn't yet have a buffer or if the buffer is empty or overflowing. Where asynchronous connection state is concerned, this should mean that the time won't be scheduled if the initial connection isn't established.", and "A few more small changes". file: e33aaed426 check-in: [176e45cc06] user: pooryorick branch: unchained, size: 323491
2024-08-26
21:56
In UpdateInterest() check statePtr->curOutPtr instead of statePtr->outQueueHead before schedulig ChannelTimerProc. In io.test/io-28.6 create enough of a refchan to meet the needs of the test. file: 69a49c0cc8 check-in: [c134aff5ee] user: pooryorick branch: unchained, size: 323491
21:02
Merge [33460960ef]: Possibly a fix for [080f846fd58958ef]: When updating the interest of a channel, don't schedule the channel handler timer if a nonblocking channel doesn't yet have a buffer or if the buffer is empty or overflowing. Where asynchronous connection state is concerned, this should mean that the time won't be scheduled if the initial connection isn't established. file: 3a6f03c7d7 check-in: [4b67f7e422] user: pooryorick branch: unchained, size: 323504
12:12
Merge [28e5e230b66f785b]: "Tcl_GetStringFromObj() -> TclGetStringFromObj() (optimization)", and resolve conflicts, including changing all occurrences os "TclGetStringFromObj" to Tcl_GetStringFromObj(). file: 85da600cdc check-in: [261aca7955] user: pooryorick branch: unchained, size: 323363
09:54
Merge [9a59cf84995963c5]: More spacing/formatting tweaks. file: 88ca185a2e check-in: [33360d10e4] user: pooryorick branch: unchained, size: 323363
09:45
Merge [1fbff64078d7fb02]: Fix indentation/brace usage style issues. file: 407edc51a7 check-in: [bd3faf4a67] user: pooryorick branch: unchained, size: 323401
2024-08-25
20:44
Merge [63d442cdc0d0d498]: "Restore TclListObjGetElements()/TclListObjLength() as they were in 8.6 too." Also remove TclListObjGetElements and TclListObjLength from the stubs table. file: b85b46ca10 check-in: [891803cf8c] user: pooryorick branch: unchained, size: 323439
12:53
Merge [8414d81893dceb20]: Remove some dead code. file: 41762c6d70 check-in: [cbeb3acc9e] user: pooryorick branch: unchained, size: 323440
08:20
Merge [a4f2b185777ab206]: Final fix for [db4f2843cd]: Segfault by BO in ReadChars (and Tcl_ReadChars with append). file: e1ac758b5b check-in: [103eef358c] user: pooryorick branch: unchained, size: 323862
2024-08-24
10:19
Merge [e73f1f5bfdd0d893]: Fix [a173f922]: fcopy does not write leading correct chars on later encoding error. file: b93ad3c18e check-in: [bed6314489] user: pooryorick branch: unchained, size: 323796
09:17
Merge [8acd6fd939d1f312]: TIP #653: Handle consumed data of channel commands in case of encoding errors. file: ad52a9809e check-in: [02cb346aa3] user: pooryorick branch: unchained, size: 323173
2024-08-23
14:43
Merge [b7e48b4f00d8e784]: Revise macro usage. file: bd4ec678c8 check-in: [9308ee47da] user: pooryorick branch: unchained, size: 322624
13:52
Merge [95d8ab34f6a5289]: TIP #670: Simple Extra Procedures for File Access. Some ioCmd tests fail, but presumably will be fixed shortly. file: 609a456d94 check-in: [b31705e7f8] user: pooryorick branch: unchained, size: 322625
13:30
Merge [054ebbf73b75fd6e]: Fix [c4eb46a1]: endless loop on non blocking gets with encoding error. No additional failing tests. file: 07f7458480 check-in: [7bfbc78c79] user: pooryorick branch: unchained, size: 322631
12:39
Merge [e9d398b2aa04d93d], Make "-profile strict" the default in Tcl 9.0. file: 04f55f26ff check-in: [9c4f7a3dae] user: pooryorick branch: unchained, size: 321931
10:46
Merge [3d21abe8464432b2]: Tcl_GetByteArrayFromObj -> Tcl_GetBytesFromObj everywhere in core, since it has the possibility of better error-reporting. This fixes the -DTCL_NO_DEPRECATED build failure. file: aa67c91bd9 check-in: [df9e95d3b7] user: pooryorick branch: unchained, size: 322533
2024-08-22
21:16
Merge [9f8058cbff133f51]: A no-op. file: 9eb2efaca1 check-in: [258882ed0c] user: pooryorick branch: unchained, size: 322523
20:53
Merge [6afcffcb660971ef]: Bug [33b2486199] - thread create/release unmounts zipfs. file: 585b2e72c8 check-in: [dfc86cdbd2] user: pooryorick branch: unchained, size: 322522
20:52
Merge [f67f60d202716adf]: Fix [26870862f0]: Wrong sentinel in Tcl_SetErrorCode usage; Handle any C++-compiler as well. file: 2a270e5bad check-in: [e18c9ab9f6] user: pooryorick branch: unchained, size: 322546
17:28
Merge [a48f311a78ac1e10]: Fix [8259d74a64] - panic on exit. file: 9b947023ae check-in: [058c4f85e6] user: pooryorick branch: unchained, size: 322506
2024-08-17
22:44
Merge 9.0 file: e68e3d1818 check-in: [ee93993470] user: jan.nijtmans branch: tip-626, size: 322452
2024-08-13
13:45
Fix for [39680865953cce4f], Basic nonblocking write-only refchan hangs. file: 25515f4d5d check-in: [ab87ef464e] user: pooryorick branch: bug-3968086595, size: 323404
2024-07-22
17:43
Missing guard against NULL interp. file: 4b146b512e check-in: [9b271a3365] user: dgp branch: main, size: 322447
17:28
Missing safeguard against NULL interp. file: 858968aac4 check-in: [a3366a9ec2] user: dgp branch: mistake, size: 322437
2024-07-20
15:59
Merge trunk [91c2f411e7e71552], TIP #636 (tip-636-tcl9-644), resolve all conflicts including those resulting from conflicting Tcl_Obj interface implementations, and relicense under GNU Affero General Public License. All tests pass. file: be8effe443 check-in: [d8a3450f12] user: pooryorick branch: unchained, size: 322483
2024-06-30
14:09
Merge 9.0 file: 8b7aad3240 check-in: [e50766bcc3] user: jan.nijtmans branch: tip-626, size: 322422
2024-06-28
16:10
Add "chan isbinary" command. Part of TIP #699, meant for 8.7 file: a2e83be807 check-in: [14070e0a13] user: jan.nijtmans branch: core-8-branch, size: 328468
2024-06-27
22:28
Merge 9.0 file: befd1bfab1 check-in: [a3d20af5ba] user: jan.nijtmans branch: tip-626, size: 321505
2024-06-24
13:14
Add "chan isbinary" for checking whether a _channel_ is binary file: df5b636906 check-in: [69c548d59d] user: jan.nijtmans branch: tip-699, size: 322417
13:11
TIP #699: Remove support for encoding aliases {} and "binary". file: 018ad0f005 check-in: [c7b543846d] user: jan.nijtmans branch: tip-699, size: 321651
2024-06-23
20:26
Add "chan isbinary" for checking whether a _channel_ is binary. file: 671fbdfeaf check-in: [41900f4c4f] user: jan.nijtmans branch: rfe-85ddd247b6, size: 322266
2024-06-21
11:53
Eliminate "-encoding binary" in favour of "-translation binary". Meant for investigation what would happen. file: 14a6b6c9c6 check-in: [3ee6a6d9b6] user: jan.nijtmans branch: bug-8cae59ecb0, size: 321712
2024-06-20
18:47
Remove dead code / outdated comment file: dafc5ab070 check-in: [68ea14892f] user: jan.nijtmans branch: main, size: 321500
18:22
Merge 9.0 file: a11c59ef1d check-in: [29d29484d0] user: jan.nijtmans branch: tip-626, size: 321983
2024-06-19
16:36
Fix [7be97a6859]: Reviewing chan.n changes file: 02e6594af9 check-in: [f29b98a453] user: jan.nijtmans branch: core-8-branch, size: 327677
2024-06-17
13:43
Change "channelId" to "channel" in documentation, error-handling and testcases file: fccaa8a7d7 check-in: [877daeddce] user: jan.nijtmans branch: no-channelid, size: 321978
2024-06-11
07:52
Merge 9.0 file: 524707bd0c check-in: [121c2ead8c] user: jan.nijtmans branch: tip-626, size: 321985
2024-06-09
10:33
Simpler commenting of Tcl_ChannelType instances; make zip channel type const file: 8fd094022a check-in: [612cbe4899] user: dkf branch: main, size: 321980
2024-06-07
11:31
Merge 9.0 file: 4e8edf3d1c check-in: [84ae5008cc] user: jan.nijtmans branch: tip-626, size: 321979
2024-06-04
15:35
Space before tab is an extremely unlikely to be correct indentation pattern file: ea4e8a61e2 check-in: [f6c559b364] user: dkf branch: main, size: 321974
2024-05-29
09:44
Fix [18f4a94d03], by reverting [9bcec7cd880540c3], which caused it. See [https://core.tcl-lang.org/tcl/wiki?name=Rationale+for+rollback+of+refchan+event+generation+in+core|here] for motivation, approved by the TCT. file: 3235125f01 check-in: [8d4d978bd3] user: jan.nijtmans branch: core-8-branch, size: 327679
08:37
Merge trunk file: 2526f93fd4 check-in: [0258b07434] user: apnadkarni branch: bug-18f4a94d03, size: 321989
2024-05-28
13:24
Merge 8.7 file: b292bc727f check-in: [9fa0318dcd] user: jan.nijtmans branch: main, size: 323446
12:54
Eliminate some unnecessary type-casts. Tcl_GetString -> TclGetString where appropriate file: 376137e2ee check-in: [ddf52caf7a] user: jan.nijtmans branch: core-8-branch, size: 329126
12:38
Make TclGlob() a static function. Sentinel/indenting/comment improvements (all backported from 8.7) file: 440ccddbda check-in: [5f6c7373c1] user: jan.nijtmans branch: core-8-6-branch, size: 316535
2024-05-27
20:19
Some more functions for lists, a bit like the ones for dicts file: c8aeac85e4 check-in: [80e4f71f99] user: dkf branch: dkf/experimental-more-list-c-funcs, size: 316539
2024-05-24
16:05
Merge trunk file: e3cf9a2927 check-in: [3c2a89b54b] user: apnadkarni branch: bug-18f4a94d03, size: 322032
2024-05-23
13:48
Fix [3fc3287497]: TclGetProcessGlobalValue encodes information twice on Windows file: e55f36a78d check-in: [5de1d4a68b] user: jan.nijtmans branch: core-8-6-branch, size: 316592
13:44
Merge 8.7 file: 19ab2284b1 check-in: [b4a4d46ce0] user: jan.nijtmans branch: main, size: 323489
12:00
Merge 8.6 file: b4a2f33209 check-in: [37b8b3fdaf] user: jan.nijtmans branch: core-8-branch, size: 329183
11:52
Fix 2 warnings on Win32 (Thanks, Harald). Some more code cleanup, backported from 8.7) file: bf0d8bd81a check-in: [73474e33a9] user: jan.nijtmans branch: core-8-6-branch, size: 316596
08:53
More trickery with macros file: 7802bc6973 check-in: [a3f9c1bec2] user: dkf branch: more-macros, size: 321239
2024-05-22
09:24
Merge 8.6. Fix TCL_NO_DEPRECATED build file: 8619048580 check-in: [dbeb93773b] user: jan.nijtmans branch: core-8-branch, size: 329179
2024-05-21
22:06
Merge 9.0 file: 6034fef3af check-in: [e906cead78] user: jan.nijtmans branch: tip-626, size: 323496
15:03
Merge 8.7. Some int -> Tcl_Size file: 2465552b74 check-in: [1a12a05fa1] user: jan.nijtmans branch: main, size: 323491
10:33
merge 8.7 file: acb002dc86 check-in: [bc2e652394] user: sebres branch: main, size: 323495
09:48
merge 8.6 file: 9c83c2fadf check-in: [5be1c6c979] user: sebres branch: core-8-branch, size: 329183
2024-05-20
16:38
merge trunk file: cc1c3654a8 check-in: [3fd88cd4cd] user: dkf branch: result-helpers, size: 321212
2024-05-17
12:57
merge apn-channelstate-leak, fixes possible leaks on several members that may be set after the close, asynchronously or via some callbacks or handlers file: 50896e16a1 check-in: [f41c1304d5] user: sebres branch: fix-79474c58800cdf94, size: 316589
11:48
Free ChannelState.chanMsg .unreportedMsg file: 9a51d2371e check-in: [f37f5aac4c] user: apnadkarni branch: apn-channelstate-leak, size: 316356
09:51
fixes yet another segfault (if write handler doesn't generate an error, but returns normally with length of written bytes) file: 310defe31a check-in: [2c48f0c544] user: sebres branch: fix-79474c58800cdf94, size: 315830
2024-05-16
12:43
A couple of tiny code style improvements file: b0009c66bc check-in: [d886cbe9b6] user: dkf branch: fix-79474c58800cdf94, size: 315788
08:56
code review: preserving r/w channels after all possible failures (don't need to release in error case) file: 069f3cccb9 check-in: [70133fbef0] user: sebres branch: fix-79474c58800cdf94, size: 315786
08:56
code review: preserving r/w channels after all possible failures (don't need to release in error case) file: 63bd5acb51 check-in: [36be7eb4a4] user: sebres branch: fix-79474c58800cdf94--8-5-based, size: 296861
2024-05-15
15:08
small code review: removal of unneeded - result is initially TCL_OK file: ac66a01a17 check-in: [10a82e29ad] user: sebres branch: fix-79474c58800cdf94, size: 315786
15:06
small code review: removal of unneeded - result is initially TCL_OK file: 64e0c4ca8c check-in: [a20792c76f] user: sebres branch: fix-79474c58800cdf94--8-5-based, size: 296861
12:52
ultimate fix for [79474c58800cdf94]: avoid segfault on copy-state structure freed to early, protected by refCount and by preserving its r/w channels now file: cec22c10be check-in: [b66be298b9] user: sebres branch: fix-79474c58800cdf94, size: 315849
12:39
ultimate fix for [79474c58800cdf94]: avoid segfault on copy-state structure freed to early, protected by refCount and by preserving its r/w channels now; back-ported (squashed rewrite) from tclSE to 8.5 base file: bf5dafde22 check-in: [8ca3b56334] user: sebres branch: fix-79474c58800cdf94--8-5-based, size: 296924
2024-05-14
16:06
Add helper macros TclSetResult and TclPrintfResult file: 1650ac226a check-in: [0b65fb9e0c] user: dkf branch: result-helpers, size: 321126
2024-05-13
15:41
Clean up a lot of small whitespace issues This is the dullest commit ever. Sorry. file: 969669b769 check-in: [3a60363aa1] user: dkf branch: main, size: 321752
2024-05-10
15:40
More whitespace cleanup file: fc0e853a9f check-in: [835b1a5566] user: dkf branch: main, size: 321838
2024-04-23
16:06
Hmm, something is broken. Leaving this here but this commit is definitely wrong somehow file: 688b2496e1 check-in: [b356268e32] user: dkf branch: tidy-indentation, size: 321897
2024-04-19
13:34
Merge 9.0 file: 9922a2cb41 check-in: [e8fafa419a] user: jan.nijtmans branch: tip-626, size: 321870
13:32
Rebase to 9.0 file: 4f50cff7ea check-in: [dc4edc0144] user: jan.nijtmans branch: bug-18f4a94d03, size: 320409
13:23
Merge 8.7 file: d678e37c13 check-in: [41ac78bd66] user: jan.nijtmans branch: main, size: 321865
12:36
Merge 8.6 file: 14363174d1 check-in: [95cc4a3738] user: jan.nijtmans branch: core-8-branch, size: 327528
11:48
More code cleanup, backported from 8.7 file: 1288ff295e check-in: [748946df7d] user: jan.nijtmans branch: core-8-6-branch, size: 314934
09:37
Merge 9.0 file: f182b6d4f7 check-in: [49981a1ec1] user: jan.nijtmans branch: tip-626, size: 321951
08:22
Merge 8.7 (more indenting) file: 1b474bc52e check-in: [ad350b1aa5] user: jan.nijtmans branch: main, size: 321946
08:15
More indenting file: 883a574970 check-in: [9a45160d30] user: jan.nijtmans branch: core-8-branch, size: 327609
08:12
(backport) Fix indenting file: dca3a479c4 check-in: [c3b5ee0e35] user: jan.nijtmans branch: core-8-branch, size: 328617
08:00
Fix indenting file: 2547af99d8 check-in: [2ac5b24c75] user: jan.nijtmans branch: main, size: 322905
2024-04-18
18:34
Rebase to 9.0 file: 65b0fc3495 check-in: [d42b38aa43] user: jan.nijtmans branch: bug-18f4a94d03, size: 321449
15:32
Fix [18f4a94d03] by backing out [9bcec7cd880540c3] (again) file: 9c10aeb1cf check-in: [a2633b5cc5] user: jan.nijtmans branch: bug-18f4a94d03, size: 327161
15:25
Merge 8.7 file: 99deed649a check-in: [d6f9aacbe7] user: jan.nijtmans branch: main, size: 322905
15:22
Merge 8.6 file: 0465316812 check-in: [3b1ba17e3a] user: jan.nijtmans branch: core-8-branch, size: 328617
15:06
Tidy up some indentation and other little code style issues file: fab735f259 check-in: [cb11914788] user: dkf branch: tidy-indentation, size: 322924
14:38
Reduce the diff between 8.6 and 8.7, by backporting some formatting/restructuring. No functional change. file: 1ae593e8e2 check-in: [36360649be] user: jan.nijtmans branch: core-8-6-branch, size: 315955
2024-04-14
14:05
Merge 9.0 file: 195e64fc30 check-in: [1861587f45] user: jan.nijtmans branch: tip-626, size: 322929
2024-04-11
14:24
Merge 8.7 file: f37b09fd0f check-in: [6bab8cce28] user: jan.nijtmans branch: main, size: 322924
14:09
Merge 8.7 file: 8f29d0c1b6 check-in: [93e55377dc] user: jan.nijtmans branch: main, size: 322937
13:22
(cherry-pick): Possibly a fix for [080f846fd58958ef]: When updating the interest of a channel, don't schedule the channel handler timer if a nonblocking channel doesn't yet have a buffer or if the buffer is empty or overflowing. Where asynchronous connection state is concerned, this should mean that the time won't be scheduled if the initial connection isn't established. file: 5c0362b900 check-in: [1cc41db97a] user: jan.nijtmans branch: core-8-branch, size: 328637
13:15
Merge 8.6. Use Tcl_NewBooleanObj for booleans; we should say what we mean file: ded96ac2f1 check-in: [c6d3960498] user: jan.nijtmans branch: core-8-branch, size: 328509
12:35
Use Tcl_NewBooleanObj for booleans; we should say what we mean. Fix sentinels and type-casts. file: f2bf2eb8ef check-in: [e75d7ff329] user: jan.nijtmans branch: core-8-6-branch, size: 316096
2024-04-04
11:50
Possibly a fix for [080f846fd58958ef]: When updating the interest of a channel, don't schedule the channel handler timer if a nonblocking channel doesn't yet have a buffer or if the buffer is empty or overflowing. Where asynchronous connection state is concerned, this should mean that the time won't be scheduled if the initial connection isn't established. file: 69d39b78e0 check-in: [70a407c245] user: pooryorick branch: main, size: 322937
2024-04-01
20:48
Merge 9.0 file: c1c2a277a6 check-in: [d4eee66f60] user: jan.nijtmans branch: tip-626, size: 322801
00:23
Fix for [ac7592e73c10d04b], Idle events are never processed when a "writable" handler on a nonblocking channel dominates the event queue. file: 7162b7ec60 check-in: [b2d083e9e0] user: pooryorick branch: bug-ac7592e73c10d04b, size: 322552
2024-03-31
13:22
One more place to disable writable polling timer file: 65e76bc477 check-in: [bee0a0598a] user: apnadkarni branch: apn-bug-de232b49f2, size: 322806
2024-03-30
10:52
Refchan not generating write events file: c11bb065cd check-in: [4953552214] user: apnadkarni branch: apn-bug-de232b49f2, size: 322801
2024-03-21
13:55
Merge 8.7. Tcl_GetStringFromObj() -> TclGetStringFromObj() (optimization) file: 1b0c1964c4 check-in: [28e5e230b6] user: jan.nijtmans branch: main, size: 322796
12:57
Formatting/indenting file: 4f3ad992ce check-in: [1dd169510a] user: jan.nijtmans branch: core-8-branch, size: 328509
2024-03-20
14:27
Merge 9.0 file: 3a28837858 check-in: [4271f3b52a] user: jan.nijtmans branch: tip-626, size: 322801
2024-03-19
17:09
more spacing/formatting tweaks file: bea558155e check-in: [9a59cf8499] user: dkf branch: main, size: 322801
14:56
Fix indentation/brace usage style issues file: a86c7a1908 check-in: [1fbff64078] user: dkf branch: main, size: 322839
2024-03-13
17:11
Merge 9.0 file: 6c056749af check-in: [a29cf046b8] user: jan.nijtmans branch: tip-626, size: 322882
09:45
Restore TclListObjLength()/TclListObjGetElements() macro's, as they were in 8.6 file: f9d9149b03 check-in: [c575f9dc00] user: jan.nijtmans branch: core-8-branch, size: 328554
2024-03-12
21:24
Restore TclListObjGetElements()/TclListObjLength() as they were in 8.6 too. file: d68979c295 check-in: [63d442cdc0] user: jan.nijtmans branch: main, size: 322877
2024-03-05
22:03
Merge 9.0 file: 08245b31ca check-in: [693ed4eabc] user: jan.nijtmans branch: tip-626, size: 322883
2024-02-21
23:14
Remove some dead code file: 6e12f8e38c check-in: [8414d81893] user: jan.nijtmans branch: main, size: 322878
2024-02-14
16:05
offsetof -> TclOffset file: 03c6be13ec check-in: [b554b84d1a] user: jan.nijtmans branch: core-8-6-branch, size: 316056
2024-01-31
10:19
Merge 9.0 file: 215d790ad2 check-in: [9c2f43c8b7] user: jan.nijtmans branch: tip-626, size: 323305
2024-01-30
17:07
Tweaking indentation of code; really unimportant... file: 4100b36d64 check-in: [bb72806960] user: dkf branch: dkf-indent-tweak, size: 323272
2024-01-29
15:42
merge 8.7 file: 16b3272896 check-in: [a4f2b18577] user: sebres branch: main, size: 323300
15:26
merge 8.6 file: b78b2a6758 check-in: [902ceac239] user: sebres branch: core-8-branch, size: 328555
13:55
closes [db4f2843cd]: fixes SF by BO in ReadChars (and Tcl_ReadChars with append) caused by wrong buffer enlarge if objPtr shimmering to unicode for whatever reason, since Tcl_AppendToObj prefers unicode to bytes, whereas TclAppendUtfToUtf always extend bytes (that handled by ReadChars) file: 4b47c6801e check-in: [37e659d589] user: sebres branch: fix-db4f2843cd, size: 316055
2024-01-22
22:30
Possible workaround for [db4f2843cd]. Would this help? file: a097594a4d check-in: [100933523c] user: jan.nijtmans branch: bug-db4f2843cd, size: 316091
2023-12-08
15:23
Merge 9.0 file: d8eb5de7ac check-in: [ee63257ca1] user: jan.nijtmans branch: tip-626, size: 323245
2023-12-06
17:35
merge 8.7 (fix for [db4f2843cd]) file: 67089a4f83 check-in: [f4c0d899fb] user: sebres branch: main, size: 323240
17:34
merge 8.6 (fix for [db4f2843cd]) file: 07a2de7c1d check-in: [c001bf4f58] user: sebres branch: core-8-branch, size: 328495
2023-12-05
22:42
closes [db4f2843cd]: fixes SF by BO in ReadChars (and Tcl_ReadChars with append) caused by wrong buffer enlarge if objPtr shimmering to unicode for whatever reason, since Tcl_AppendToObj prefers unicode to bytes, whereas Tcl_SetObjLength prefers bytes (like the ReadChars) file: 8e47d19775 check-in: [cc90065303] user: sebres branch: fix-db4f2843cd, size: 315995
2023-11-24
13:28
Merge 9.0 file: 2a5f161a6a check-in: [96e43e34f3] user: jan.nijtmans branch: tip-626, size: 323239
2023-11-20
13:55
Fix bug [a173f922]: fcopy does not write leading correct chars on later encoding error. file: ea9e58b07c check-in: [e73f1f5bfd] user: oehhar branch: main, size: 323234
13:32
Merge core-8-branch file: cd54702d3a check-in: [9a7d12b797] user: oehhar branch: bug-a173f922-fcopy-tell, size: 328489
13:15
Bug [a173f922]: fix bug: fcopy does not write leading correct chars on later encoding error. file: 5ac94d6585 check-in: [b9f611b9a0] user: oehhar branch: bug-a173f922-fcopy-tell, size: 327947
2023-11-18
23:36
TIP #653: Handle consumed data of channel commands in case of encoding errors file: 6ab8fb060a check-in: [8acd6fd939] user: jan.nijtmans branch: main, size: 322611
2023-11-16
23:21
Revise macro usage file: 6abc1ae021 check-in: [b7e48b4f00] user: jan.nijtmans branch: main, size: 322062
2023-11-15
08:28
Merge 8.7 file: 433abafd8b check-in: [95d8ab34f6] user: jan.nijtmans branch: main, size: 322063
2023-11-14
11:07
Add test for blocking mode file: 2fdc7c4569 check-in: [648e73b3a6] user: jan.nijtmans branch: tip-653, size: 327866
2023-11-13
16:19
Bug [c4eb46a1]: endless loop on non blocking gets with encoding error. No additional failing tests. file: 92199134ae check-in: [054ebbf73b] user: oehhar branch: main, size: 322069
12:48
Bug [c4eb46a1]: non-blocking gets fires the error on 2nd call when sequence is incomplete. Added some test cases. file: 363d7e5ef1 check-in: [dbcafe5259] user: oehhar branch: bug-c4eb46a1, size: 327324
2023-11-12
18:55
Bug [c4eb46a1]: endless loop on gets, non blocking, profile strict, encoding error: remove non-blocking exit condition and add test case file: 69ec8b8b72 check-in: [831c9a8797] user: oehhar branch: bug-c4eb46a1, size: 327078
2023-11-10
13:12
Rebase to latest 9.0 file: 9851551e48 check-in: [0797156bae] user: jan.nijtmans branch: tip-657, size: 321369
2023-11-08
09:12
Tcl_GetByteArrayFromObj -> Tcl_GetBytesFromObj everywhere in core, since it has the possibility of better error-reporting. This fixes the -DTCL_NO_DEPRECATED build failure file: a5f42aee2b check-in: [3d21abe846] user: jan.nijtmans branch: main, size: 321971
2023-11-02
17:00
Merge main file: c779302373 check-in: [e85a6745f5] user: oehhar branch: tip-657, size: 321359
2023-10-29
22:07
Merge 8.7 file: fc2390cbbd check-in: [9f8058cbff] user: jan.nijtmans branch: main, size: 321961
22:02
Merge 8.6 file: ebd0b7e0de check-in: [64a951e3dc] user: jan.nijtmans branch: core-8-branch, size: 326624
21:45
Fix [0219fb7511]: tclIO.c: avoid -Wstrict-prototypes warning. Some code cleanup file: bcc1000f1a check-in: [c82b6d45b2] user: jan.nijtmans branch: core-8-6-branch, size: 315989
2023-10-22
19:56
Merge 9.0 file: e198e02d36 check-in: [f107021263] user: jan.nijtmans branch: tip-626, size: 321965
2023-10-21
06:09
Merge 8.7 - Bug [33b2486199] - thread create/release unmounts zipfs file: bb326f9f2a check-in: [6afcffcb66] user: apnadkarni branch: main, size: 321960
04:14
Move zipfs finalization to TclFinalizeFilesystem file: 83932e6568 check-in: [e0c1a7b07f] user: apnadkarni branch: bug-33b2486199, size: 326607
2023-10-19
18:48
Merge 8.7 file: 2cd042fd82 check-in: [f67f60d202] user: jan.nijtmans branch: main, size: 321984
2023-10-17
06:02
Handle sentinels for any C++ compiler file: 2333445835 check-in: [6876d1f99a] user: jan.nijtmans branch: bug-26870862f0, size: 326631
2023-10-06
17:03
Merge 9.0 file: 1ad4b1a765 check-in: [7d52993233] user: jan.nijtmans branch: tip-626, size: 321949
2023-09-30
03:51
Merge 8.7 - Fix [8259d74a64] - panic on exit file: eac45bcfb8 check-in: [a48f311a78] user: apnadkarni branch: main, size: 321944
2023-09-29
16:39
Refactor zipfs finalization file: c2772be8d0 check-in: [b18fa0f371] user: apnadkarni branch: bug-8259d74a64, size: 326591
07:51
Merge 9.0. Make stderr channel -profile replace file: 4477e6513a check-in: [51dccaaeb4] user: jan.nijtmans branch: tip-657, size: 321319
2023-09-25
07:17
Merge 8.7 (2023-05-03) file: fa70ae049c check-in: [d91f112024] user: jan.nijtmans branch: tip-656-simpl, size: 326980
2023-07-26
11:29
Rebase to 8.7 file: 86a018fead check-in: [6ed8dddae4] user: jan.nijtmans branch: tip-666, size: 326568
2023-06-21
07:33
Merge 9.0 file: fd8e4c6c2d check-in: [db89a8f843] user: jan.nijtmans branch: tip-626, size: 321926
2023-06-18
21:30
Merge trunk-encoding-defaultstrict [c499122331]. file: 57af713103 check-in: [22400aa71b] user: pooryorick branch: unchained, size: 322129
2023-06-12
22:45
Merge 9.0 file: 905832fd0c check-in: [2a8e051165] user: jan.nijtmans branch: tip-657, size: 320852
10:19
Merge trunk [7dc0ea8ca5]. file: 9aa35bffc6 check-in: [c499122331] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322162
04:10
Revert unwarranted change in Tcl_CreateChannel() from [1776327edd]. file: e377081e84 check-in: [f413252375] user: pooryorick branch: main, size: 321921
2023-06-11
20:21
Merge trunk [402ff62239]. file: c518090f46 check-in: [5fd8267c8a] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322260
19:41
Merge trunk [3389fba412]. file: 7e35a55fa3 check-in: [09a7091246] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322305
07:29
Merge trunk [20891426a8]. file: 616f7f377e check-in: [56d7f41983] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322305
2023-06-01
21:36
Merge 9.0 file: 1cf42dde9b check-in: [941600cdb3] user: jan.nijtmans branch: tip-626, size: 321920
2023-05-30
12:22
Merge 8.7 file: 02d6e01e9f check-in: [1776327edd] user: jan.nijtmans branch: main, size: 321915
11:25
Backport IO-related changes from Tcl 9.0. Needed for preparation of TIP #653 file: 3378dde9d2 check-in: [6165bc074f] user: jan.nijtmans branch: core-8-branch, size: 326567
2023-05-12
09:34
Merge 9.0 file: 485df9691c check-in: [c1e4ff0616] user: jan.nijtmans branch: tip-626, size: 322024
2023-05-11
21:47
Merge trunk [05eeae5d67] and resolve conflicts. file: 9501edacc3 check-in: [ea8f3cd359] user: pooryorick branch: unchained, size: 322227
15:30
Restore warning-free compilation with C++ compiler file: 75d8b9b13d check-in: [9a4d14e5dc] user: jan.nijtmans branch: main, size: 322019
13:08
Fix Valgind report of still reachable blocks in aaa_exit.test and other test files. file: 3c4a77cca0 check-in: [a82bb79e8c] user: pooryorick branch: main, size: 322011
2023-05-10
15:37
Rebase to latest 8.7 file: 7adba329f8 check-in: [11d97e377e] user: jan.nijtmans branch: tip-666, size: 326539
2023-05-09
16:11
Left-over TCL_ENCODING_STRICT, not used any more. Add "-profile tcl8" for testcases which don't work in strict profile file: 43c2ac9972 check-in: [c7d09172e8] user: jan.nijtmans branch: main, size: 322069
2023-05-07
19:53
Merge 9.0 file: c501706721 check-in: [a3731b569f] user: jan.nijtmans branch: tip-626, size: 322069
2023-05-05
06:18
Remove more ... to be split off in separate TIP's file: f614e3f41f check-in: [396e2bbc01] user: jan.nijtmans branch: tip-657, size: 321999
2023-05-04
20:26
Make some tests select an encoding profile instead of relying on the default. file: 8fb532c883 check-in: [3389fba412] user: pooryorick branch: main, size: 322064
19:53
Tcl_InputEncodingError() -> TclInputEncodingError. It will be split off in a separate TIP file: cb21a1f7ba check-in: [b907108f27] user: jan.nijtmans branch: tip-657, size: 322723
13:22
Merge 9.0 file: 2b77061838 check-in: [07e3049227] user: jan.nijtmans branch: tip-626, size: 322058
06:44
Some int -> Tcl_Size. Remove unnecessary knownBug constraint file: 5a251c0b21 check-in: [5f27b0bb4a] user: jan.nijtmans branch: tip-657, size: 322725
2023-05-03
15:59
Merge 8.7 file: c7701dee2a check-in: [20891426a8] user: jan.nijtmans branch: main, size: 322053
11:31
Merge [842b3b3949]. file: f2cc82ee78 check-in: [c3278e757b] user: pooryorick branch: unchained, size: 322276
09:20
Merge 9.0 file: ce9e8fe1ff check-in: [583c71a819] user: jan.nijtmans branch: tip-657, size: 322721
07:04
Merge 9.0 file: 31877a9b93 check-in: [db15a1e038] user: jan.nijtmans branch: tip-626, size: 322062
07:03
Merge 9.0 file: 15059f3f9f check-in: [17486d3dce] user: jan.nijtmans branch: tip-626, size: 322238
04:03
Changed CHANNEL_PROFILE_* to ENCODING_PROFILE_* and moved out of tclIO.h. See below. For whatever reason, these macros were renamed and moved to tclIO.h post-660. This is inappropriate as those macros deal with *encoding* flags, not *channel* flags and have relevance outside of I/O making their renaming inappropriate. Further putting them in tclIO.h forces inclusion of that header in modules that do not otherwise need that header. file: 5838c465d3 check-in: [b9aee6a781] user: apnadkarni branch: main, size: 322057
03:31
Changed CHANNEL_PROFILE_* to ENCODING_PROFILE_* and moved out of tclIO.h. See below. For whatever reason, these macros were renamed and moved to tclIO.h post-660. This is inappropriate as those macros deal with *encoding* flags, not *channel* flags and have relevance outside of I/O making their renaming inappropriate. Further putting them in tclIO.h forces inclusion of that header in modules that do not otherwise need that header. file: e2bea474e9 check-in: [8cf18cec8c] user: apnadkarni branch: core-8-branch, size: 326538
2023-05-02
21:50
Fix for [0306a5563c]. file: 519cf3474c check-in: [36eb6e3921] user: pointsman branch: bug-0306a5563, size: 322035
2023-04-28
23:57
Remove all code related to TCL_NO_DEPRECATED, and some related to TCL_MAJOR_VERSION. file: d1e358e8d1 check-in: [a2e5794d46] user: pooryorick branch: unchained, size: 322452
09:03
Merge trunk. file: b1f3a6a45e check-in: [38d72f7adb] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322485
2023-04-26
15:53
More size_t -> Tcl_Size changes, which were missed before. Also (experimental) make the wrapper macro's produce compiler warnings is Tcl_Size is not used. file: 17d44b6147 check-in: [0c6c1aba8d] user: jan.nijtmans branch: tip-660-continued, size: 322233
2023-04-23
18:14
That fixes the examples given in [0306a5563c]. Needs more consideration before claim success. file: abf0f8ddf7 check-in: [1cf1f44a14] user: pointsman branch: bug-0306a5563c, size: 322253
11:48
merge trunk [f867f44c9c]. file: c2e49465b4 check-in: [be70a97e6d] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322481
2023-04-21
21:31
Merge 9.0 file: 666a850f17 check-in: [f1cb9fbb82] user: jan.nijtmans branch: tip-657, size: 322699
13:32
Merge 9.0 file: dbc49b6a5a check-in: [b732c118b6] user: jan.nijtmans branch: tip-626, size: 322234
2023-04-20
16:53
Merge 9.0 file: 1d504a6a65 check-in: [aa3e7e529f] user: jan.nijtmans branch: tip-626, size: 322574
2023-04-19
19:36
TIP 660 changes to stop warnings in --enable-symbols=mem build. file: ce11265346 check-in: [5406686e2d] user: dgp branch: main, size: 322229
12:20
Fossil merge [1842599320]: TIP 660 accepted. file: 31f20c76fe check-in: [2ae62e3581] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322479
12:15
Merge trunk [883464ea32]. file: c617cb3d1c check-in: [b5d4c2af53] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322821
07:43
Merge trunk [f9c8bbde44]. file: 87ebda5b43 check-in: [3237cee77c] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322734
07:17
Merge trunk [433637e689]. file: 52a0cc05ba check-in: [13903d9907] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322675
02:00
Merge trunk file: 7d54aa8943 check-in: [5ad7c7b96d] user: apnadkarni branch: tip-660, size: 322227
2023-04-18
23:22
Merge trunk [f9a80c2c9e]. file: 8d826d0b93 check-in: [2623ae23f1] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322680
22:56
Merge trunk [4fc1f701cc] and resolve conflicts. file: a34b58cd7b check-in: [83afff3fa5] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322678
22:35
In DoReadChars() reset CHANNEL_ENCODING_ERROR instead of CHANNEL_BLOCKED. file: 09255fb584 check-in: [883464ea32] user: pooryorick branch: main, size: 322569
22:00
Fix for [25cdcb7e8fb381fb]: Incomplete utf-8 sequence followed by eofchar results in failed assertion. file: a639bcd898 check-in: [a02c5b9f8b] user: pooryorick branch: main, size: 322562
21:38
TIP #660, merge trunk, replace testscases with trunk testcases file: dbb470d1ca check-in: [ae89fcb5d3] user: jan.nijtmans branch: tip-660-with-trunk-testcases, size: 322133
21:24
Merge 9.0 file: f0f52b0f72 check-in: [e72d7af6af] user: jan.nijtmans branch: tip-626, size: 322478
21:16
Eliminate unnecessary clearance of CHANNEL_STICKY_EOF flag. file: b79263d2f9 check-in: [af256f4469] user: pooryorick branch: main, size: 322475
21:05
Merge 9.0 file: 7dcb439909 check-in: [7275b67ac4] user: jan.nijtmans branch: tip-657, size: 322952
15:47
Merge 9.0 file: ec66314c93 check-in: [8013020fec] user: jan.nijtmans branch: tip-626, size: 322497
15:32
Merge trunk [0d197907c6]. file: 429f452d7e check-in: [17172e8451] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322826
13:24
Merge trunk [e7fcdb7611]. file: 5059182a40 check-in: [c9295cbf48] user: pooryorick branch: trunk-encodingdefaultstrict, size: 321791
12:24
Merge trunk [79cd3ac351]. file: 50a8daf3f7 check-in: [518b6086eb] user: pooryorick branch: trunk-encodingdefaultstrict, size: 321902
12:12
Merge trunk [78beedf7e2] and resolve conflicts. file: bef6577b09 check-in: [fde2438f84] user: pooryorick branch: trunk-encodingdefaultstrict, size: 321962
11:39
Merge trunk [c8983a2a94] and resolve conflicts. file: 5d024eb907 check-in: [729ef5d2e8] user: pooryorick branch: trunk-encodingdefaultstrict, size: 321805
10:47
Correct CHANNEL_BLOCKED to CHANNEL_ENCODING_ERROR in Tcl_GetsObj(). file: 04aaedf97e check-in: [93b31fac43] user: pooryorick branch: main, size: 322494
02:55
Merge trunk file: bff9ba76a0 check-in: [0a224d1449] user: apnadkarni branch: tip-660, size: 322145
2023-04-17
21:33
Merge trunk [49a4c8f8fb], "TIP 656 accepted", and resolve conflicts. file: 93cc0d74ff check-in: [ab0512022f] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322030
20:45
Merge 8.7 file: a7b3fc7dd0 check-in: [e918b7f8d1] user: jan.nijtmans branch: tip-657-backport, size: 327369
18:56
Merge 9.0 file: a133c2cb29 check-in: [f91f1fdfd8] user: jan.nijtmans branch: tip-626, size: 322490
18:53
Merge 9.0 file: 4bbaa4c31e check-in: [f4b917d87b] user: jan.nijtmans branch: tip-626, size: 322357
13:30
Merge trunk [31788d9a4b] and resolve conflicts. file: cfe49d9960 check-in: [04c47a8fd6] user: pooryorick branch: trunk-encodingdefaultstrict, size: 322676
10:58
Merge trunk [498ef65f88] and resolve conflicts. file: 1304b5b1ae check-in: [254c2ccb8c] user: pooryorick branch: trunk-encodingdefaultstrict, size: 321706
2023-04-16
23:10
Fix for [eabcbd08274f2d22], [read] error persists on channel with strict encoding after encoding is changed to binary. file: eee9fccc82 check-in: [3fa3d48874] user: pooryorick branch: main, size: 322487
17:07
Merge trunk [f868c40053] and resolve conflicts. file: d4dd579f1d check-in: [bd3f3d1df2] user: pooryorick branch: trunk-encodingdefaultstrict, size: 321014
08:29
Merge trunk [2d036d968c] and resolve issues. file: 35fecc718d check-in: [d4855bec2a] user: pooryorick branch: trunk-encodingdefaultstrict, size: 320547
08:01
Merge trunk file: 946ef8ed86 check-in: [5bbb59e590] user: apnadkarni branch: tip-660, size: 322012
2023-04-15
23:50
Merge trunk [f118b6370b]. file: 22a5e35f43 check-in: [763611b6f9] user: pooryorick branch: trunk-encodingdefaultstrict, size: 320230
22:52
Merge trunk [f9cdaa50ad]: First part of fix for [4a7397e0b3]. Not complete yet. file: 218fa0b8a8 check-in: [039abf675c] user: pooryorick branch: trunk-encodingdefaultstrict, size: 320281
22:14
Merge 8.7 file: 94a156e71d check-in: [181ea9e540] user: jan.nijtmans branch: tip-657-backport, size: 327154
22:11
Fix indenting file: 582397e50e check-in: [4d28b47d9f] user: jan.nijtmans branch: main, size: 322354
21:14
Merge 9.0 file: af1fc876c1 check-in: [d03d816a5e] user: jan.nijtmans branch: tip-657, size: 322878
11:54
Fix for [a7a89d422a4f5dd3], Under strict encoding, [gets] returns an error instead of returning the second line. Also, ensure that position in file does not change if [gets] return an error. file: b08018ccbe check-in: [d481d08ed9] user: pooryorick branch: main, size: 322353
2023-04-14
15:01
Merge trunk file: 9e618b11a7 check-in: [e36ab1e9ba] user: apnadkarni branch: tip-660, size: 321849
10:27
Merge 8.7 file: aec98d457c check-in: [8b54565968] user: jan.nijtmans branch: tip-656-simpl, size: 326949
09:12
Merge 9.0 file: 0c6586a8f8 check-in: [f041e13465] user: jan.nijtmans branch: tip-626, size: 322194
07:21
Fix for [0cd1ae596e709259], under strict encoding, [gets] returns an error even though a complete line is available. file: dc0bc42dab check-in: [67baae2829] user: pooryorick branch: main, size: 322143
07:03
Merge 9.0 file: 0cd8a09f74 check-in: [27a21d05e7] user: jan.nijtmans branch: tip-657, size: 322810
2023-04-13
07:16
Remove last reference to -nocomplainencoding and fix some spelling errors. file: 4a5f2def24 check-in: [0acfab7ee3] user: pooryorick branch: main, size: 322191
06:18
Merge 8.7 file: c1e628cde1 check-in: [4fc1f701cc] user: jan.nijtmans branch: main, size: 322189
06:16
cherry-pick from trunk: Remove one unnecesary call to Tcl_SetErrno() in DoReadChars(). file: 8626616a4a check-in: [935954e4d4] user: jan.nijtmans branch: core-8-branch, size: 326526
00:12
Remove one unnecesary call to Tcl_SetErrno() in DoReadChars(). file: 89967ceb5e check-in: [77c37636f0] user: pooryorick branch: main, size: 322191
2023-04-12
22:41
Merge 9.0 file: e1c4e17156 check-in: [032889f9a1] user: jan.nijtmans branch: tip-657, size: 322693
21:32
Merge 8.7 file: 13b2b30f49 check-in: [f1990237b5] user: jan.nijtmans branch: tip-657-backport, size: 327042
20:39
Remove unnecessary generation of string representation in DoReadChars. file: ca7bc25180 check-in: [ff859d0ece] user: pooryorick branch: main, size: 322074
19:52
Cherry-pick: Rearrange code blocks in DoReadChars to do less work when returning early file: 7de783240d check-in: [db10185730] user: jan.nijtmans branch: core-8-branch, size: 326414
18:37
Rearrange code blocks in DoReadChars to do less work when returning early. file: 012042e35f check-in: [baba91fff4] user: pooryorick branch: main, size: 322339
14:25
Correct spelling errors in comments and documentation, but also a non-comment corrections in history.tcl and tcltest.test. file: 1236f2dd50 check-in: [d65da06a77] user: pooryorick branch: main, size: 322334
13:30
Correct spelling errors in comments and documentation, but also a non-comment corrections in history.tcl and tcltest.test. file: ba6cd6afc0 check-in: [aca8de0aeb] user: pooryorick branch: core-8-branch, size: 326165
09:35
Correct spelling errors in comments and documentation, but also non-comment corrections in history.tcl and tcltest.test. file: 6414d91b09 check-in: [ee3df4e647] user: pooryorick branch: core-8-6-branch, size: 316007
2023-04-08
08:22
Merge 9.0 file: 80d8cbd272 check-in: [33a8c620c8] user: apnadkarni branch: tip-660, size: 321980
2023-04-06
16:10
Make Tcl_Size signed by default, but allow extension to make it unsigned (experimental) file: cd7a28cb4f check-in: [4f88786745] user: jan.nijtmans branch: optional-unsigned-size, size: 322336
10:03
Further fix for [fa3d9fd818fa0072]. In ChannelState.encoding, NULL no longer represents the binary encoding. file: 3158a0abd6 check-in: [39a45eb8ff] user: pooryorick branch: bug-fa3d9fd818fa0072, size: 322322
2023-04-05
15:56
Merge 9.0 file: aab20ae46c check-in: [3b3d635da5] user: jan.nijtmans branch: tip-657, size: 322508
04:47
Merge 9.0 file: af4106d945 check-in: [fb8da0d00c] user: apnadkarni branch: tip-660, size: 321547
2023-04-04
22:37
Merge 9.0 file: 1e678f9459 check-in: [fffcf23daf] user: jan.nijtmans branch: tip-626, size: 321892
22:10
Merge 9.0 file: ec94363a84 check-in: [6e9b08b3ea] user: jan.nijtmans branch: optional-signed-size, size: 321903
20:50
more progress file: d98acb7e78 check-in: [4e36871191] user: jan.nijtmans branch: optional-signed-size, size: 321313
16:26
Fix for [9ca87e6286262a62], sync fcopy buffers input in ReadChars(). file: b985b63c1d check-in: [ab027cdce4] user: pooryorick branch: core-8-branch, size: 326153
2023-04-03
20:58
Fix for [fa3d9fd818fa0072], [fcopy $chan1 $chan2 -size $size] is not [puts -nonewline $chan2 [read $chan1 -size $size]. file: cb71960dbc check-in: [704a7e8389] user: pooryorick branch: bug-fa3d9fd818fa0072, size: 321889
17:12
Fix for [9ca87e6286262a62], sync fcopy buffers input in ReadChars(). file: 2bf1572dcf check-in: [9498359f85] user: pooryorick branch: bug-9ca87e6286262a62f, size: 321438
2023-04-02
21:49
Merge 9.0. Add some more utility macro's file: c8166dd496 check-in: [4bedba476d] user: jan.nijtmans branch: optional-signed-size, size: 321286
2023-04-01
10:27
Merge 9.0 file: fd34bc6b9e check-in: [4dbed74737] user: jan.nijtmans branch: tip-660, size: 320957
10:26
Merge 8.7 file: 2aabd96581 check-in: [935c9da508] user: jan.nijtmans branch: tip-657-backport, size: 326642
2023-03-31
22:10
Merge 9.0 file: 324695f2fc check-in: [c5a1a23ae4] user: jan.nijtmans branch: tip-626, size: 321302
22:05
Rebase to 9.0 file: eeec584bcc check-in: [4010f50f55] user: jan.nijtmans branch: tip-657, size: 321918
21:02
Rebase to latest trunk. More progress file: 90640d150a check-in: [642a10ed40] user: jan.nijtmans branch: optional-signed-size, size: 321518
19:24
Backport CHANNEL_PROFILE_GET() usage fix from 9.0 file: dc4bcb21a2 check-in: [c3f59ed8d5] user: jan.nijtmans branch: core-8-branch, size: 326014
19:14
Correct other CHANNEL_PROFILE_GET() usage as well, which had the same error. Further on: 1) profile in inputEncodingFlags is always equal to profile in outputEncodingFlags, so we only have to test one of them 2) We copy from inputchannel to outputchannel, so we - really - only have to test inStatePtr->inputEncodingFlags and outStatePtr->outputEncodingFlags. 3) In Tcl 9 we only want to set sameencoding when both channels are in tcl8 mode file: 485fc81139 check-in: [e7fcdb7611] user: jan.nijtmans branch: main, size: 321299
18:56
Fix TclCopyChannel() incorrect use of CHANNEL_PROFILE_GET(). file: 1a7606e7f7 check-in: [e2a0960130] user: pooryorick branch: main, size: 321596
11:16
Merge 8.7 file: 3adc4f6a5a check-in: [cb00487e37] user: jan.nijtmans branch: main, size: 321387
2023-03-30
22:27
Merge 9.0 file: 3b7751cfd2 check-in: [25dd65ee5c] user: jan.nijtmans branch: tip-657, size: 322007
22:24
Merge 9.0 file: 9c2c38731d check-in: [6396c6443a] user: jan.nijtmans branch: tip-626, size: 321391
22:22
Merge 8.7 file: a407a70152 check-in: [7c9d2dc7a3] user: jan.nijtmans branch: main, size: 321388
22:02
Merge 8.6 file: b17ef647bc check-in: [166e8656a7] user: jan.nijtmans branch: core-8-branch, size: 326102
18:01
TIP 660. No compiler warnings. Tests suite pass on Win and Ubuntu file: d1b730df18 check-in: [eb81a25271] user: apnadkarni branch: tip-660, size: 321031
15:19
Fix [0cb3554903]: macOS 13 SDK deprecates sprintf(). But better not use it on other platforms either. file: 02630aa07f check-in: [ec56f33813] user: jan.nijtmans branch: bug-0cb3554903, size: 315995
2023-03-29
06:16
Replace bit twiddling with clear expression. file: 6722512612 check-in: [fa731ffcfc] user: pooryorick branch: main, size: 321373
2023-03-28
19:29
Combine two branches in write(). file: 51cafcb06d check-in: [3fd99fa711] user: pooryorick branch: main, size: 321377
14:34
Merge 9.0 file: b8defea6e2 check-in: [691dbad682] user: jan.nijtmans branch: tip-657, size: 322029
14:26
Minumum backport to 8.7, for TIP #657 file: 877e23a043 check-in: [fe2af85168] user: jan.nijtmans branch: tip-657-backport, size: 326717
2023-03-22
19:40
Merge 9.0 file: 88658a8923 check-in: [f809c32f0e] user: jan.nijtmans branch: tip-626, size: 321413
15:35
Simplify TIP #656 implementation. This also changes the TCL_ENCODING_PROFILE_* macro's to the same values as in #TIP #657 (so, those changes make no sense before TIP #657 is accepted) file: 851360cd02 check-in: [303ca5c8ca] user: jan.nijtmans branch: tip-656-simpl, size: 326454
15:27
Merge 9.0 file: 73db1d1bb7 check-in: [b82838f4d4] user: jan.nijtmans branch: tip-657, size: 322213
12:02
Merge 8.7 file: 442cb58ed0 check-in: [f8d60e395f] user: jan.nijtmans branch: main, size: 321410
11:44
Move (TCL_ENCODING_PROFILE_MASK|GET|SET) from tcl.h to tclIO.h, since those are not public. Some formatting. file: 7dfb076e81 check-in: [d5cda795aa] user: jan.nijtmans branch: core-8-branch, size: 326089
08:32
Since TCL_ENCODING_PROFILE_DEFAULT == TCL_ENCODING_PROFILE_TCL8 (on Tcl 8), we can simplify. file: 69f94349b4 check-in: [d0f072219c] user: jan.nijtmans branch: core-8-branch, size: 326149
2023-03-21
17:47
exchange profile <-> eofchar output in "fconfigure". Fix some testcases, which depend on profile file: fbcde88abd check-in: [644a8f9d51] user: jan.nijtmans branch: tip-657, size: 322273
16:55
Merge 9.0 file: a560ee8ea0 check-in: [2e7e961670] user: jan.nijtmans branch: tip-626, size: 321473
16:54
Merge 8.7 file: 66e91c4f97 check-in: [78beedf7e2] user: jan.nijtmans branch: main, size: 321470
09:22
Merge 9.0 file: efaa44e41c check-in: [ad1e9cb0a9] user: jan.nijtmans branch: tip-626, size: 320589
08:45
Merge 8.7 file: c6f67e0059 check-in: [c8983a2a94] user: jan.nijtmans branch: main, size: 320586
2023-03-20
23:17
Proposed fix for [1bedc53c8c]: synchronous [read] with -strictencoding does not produce an error on invalid input file: e7c7d5f698 check-in: [a7bce7dbba] user: jan.nijtmans branch: bug-1bedc53c8c, size: 326155
22:53
Proposed fix for [154ed7ce56]: Tcl 9: [gets] on -strictencoding 1 configured channel. Extracted from TIP #657 branch (better keeping bug-fix separate from enhancements) file: a7971a83d7 check-in: [a338fcd542] user: jan.nijtmans branch: bug-154ed7ce56, size: 325271
2023-03-18
09:15
Merge 9.0 file: 7eaeebbc85 check-in: [c9dd529165] user: jan.nijtmans branch: tip-626, size: 320071
2023-03-17
19:48
Merge 9.0 file: 91e5a27a7b check-in: [536c49c7a2] user: jan.nijtmans branch: tip-626, size: 321730
2023-03-16
21:03
Don't reset CHANNEL_ENCODING_ERROR here, otherwise Tcl_InputEncodingError() will give wrong result file: cb0eb46a54 check-in: [2899ff13dc] user: jan.nijtmans branch: tip-657, size: 322273
20:35
Merge tip-656-tcl9 file: b412ef66e7 check-in: [218c6465d1] user: jan.nijtmans branch: tip-657, size: 322319
18:11
Merge 9.0 file: dc1b820344 check-in: [a16366941d] user: apnadkarni branch: tip-656-tcl9, size: 320068
17:29
Merge 8.7 file: 14172eb04a check-in: [b6b55639ae] user: apnadkarni branch: tip-656, size: 324753
08:22
Allow -encoding to be shortened (again) file: 8223517d8e check-in: [5ce08299b6] user: jan.nijtmans branch: tip-657, size: 321812
03:48
Change -encodingprofile to -profile file: 96a22fc5ea check-in: [618179acda] user: apnadkarni branch: tip-656-tcl9, size: 319561
03:08
Change -encodingprofile to -profile file: 8c1b0d037b check-in: [07a4893b3b] user: apnadkarni branch: tip-656, size: 324246
2023-03-15
11:37
Further fix for issue [ea69b0258a9833cb], crash when using a channel transformation on TCP client socket. file: 6027b04571 check-in: [a76dee9eb4] user: pooryorick branch: main, size: 321727
08:42
Further fix for issue [ea69b0258a9833cb], crash when using a channel transformation on TCP client socket. file: 17e97c42d1 check-in: [26a20919fb] user: pooryorick branch: core-8-branch-bug-ea69b0258a9833cb6, size: 327007
2023-03-14
20:55
Merge tip-656-tcl9 file: 4c2235769a check-in: [62b45e81f1] user: jan.nijtmans branch: tip-657, size: 321812
20:27
Further fix for issue [ea69b0258a9833cb], crash when using a channel transformation on TCP client socket. file: bcc3d32ec9 check-in: [8aee50448c] user: pooryorick branch: bug-ea69b0258a9833cb6, size: 315982
20:24
Implement return options for read/gets file: 1ef0ffda87 check-in: [43f815fc1e] user: jan.nijtmans branch: tip-657, size: 321363
17:23
Merge 9.0. Also fix replace profile handling of orphan surrogates file: 1e029a974f check-in: [69b2949bc8] user: apnadkarni branch: tip-656-tcl9, size: 319593
15:34
Merge 8.7 file: 679f35ccbf check-in: [5068abf7d5] user: apnadkarni branch: tip-656, size: 324278
2023-03-13
20:57
Fix for issue [ea69b0258a9833cb], crash when using a channel transformation on TCP client socket. file: 353a3fd55a check-in: [62058cafe0] user: pooryorick branch: main, size: 321220
13:36
Fix for issue [ea69b0258a9833cb], crash when using a channel transformation on TCP client socket. file: 3832e13e73 check-in: [ac8ea99a1a] user: pooryorick branch: core-8-branch-bug-ea69b0258a9833cb6, size: 326500
12:22
Fix for issue [ea69b0258a9833cb], crash when using a channel transformation on TCP client socket. file: ba8fb1f960 check-in: [052f54ddfb] user: pooryorick branch: bug-ea69b0258a9833cb6, size: 315505
2023-03-10
15:55
Implement new function Tcl_InputEncodingError() file: 0a361e49e7 check-in: [6d2aac8f3f] user: jan.nijtmans branch: tip-657, size: 321167
07:37
Fix parsing of fconfigure set -encoding* options file: 4abfe28964 check-in: [8d526e142d] user: apnadkarni branch: tip-656-tcl9, size: 319144
2023-03-09
10:47
Fix SetChannelOption parsing of -encoding* to match GetChannelOption file: c6cb20af7c check-in: [12f034882f] user: apnadkarni branch: tip-656, size: 323829
2023-03-08
22:04
Oops file: 69b2ddc5b3 check-in: [74ffd90527] user: jan.nijtmans branch: tip-657, size: 320594
21:49
Merge tip-657-tcl9. Further implementation of Tcl_GetObj() et al. file: 7bead3bbcb check-in: [c1d9a43a3e] user: jan.nijtmans branch: tip-657, size: 320640
2023-03-07
23:11
encodingprofile -> profile, and fix more testcases file: 40244b9b6e check-in: [22160bc51d] user: jan.nijtmans branch: tip-657, size: 318773
21:01
Start implementing TIP #657. WIP file: b88322c353 check-in: [7d3d6f8f29] user: jan.nijtmans branch: tip-657, size: 318805
20:13
Merge 9.0 file: bffadcd9b3 check-in: [66a2cd7681] user: jan.nijtmans branch: tip-656-tcl9, size: 319144
2023-03-05
00:43
Merge 9.0 file: 753556fd73 check-in: [38f5d517dd] user: jan.nijtmans branch: tip-626, size: 320774
2023-03-03
13:19
Merge 9.0. knownBug -> strictBug file: 1ad645fa9d check-in: [98cba50454] user: jan.nijtmans branch: make-strict-the-default, size: 320011
2023-03-02
12:30
Merge 9.0 file: 6015266e4d check-in: [7884884840] user: jan.nijtmans branch: tip-626, size: 320519
2023-03-01
13:18
Bug [9a978f8323]: crash reading large files file: dc879f5e8d check-in: [a9226d7a1b] user: apnadkarni branch: bug-9a978f8323, size: 320771
07:19
Merge 9.0 file: 3128b86b2a check-in: [eb12679c83] user: apnadkarni branch: tip-656-tcl9, size: 318889
2023-02-28
22:13
Experiment, WIP. See how far we get, adapting Nathan's code, but for blocking channels only. file: 267402435e check-in: [21b8c4074d] user: jan.nijtmans branch: jn-tip-653-partial, size: 327502
16:58
Merge 9.0 file: 0b27a12616 check-in: [689b3f3457] user: jan.nijtmans branch: make-strict-the-default, size: 319756
16:08
Proposed fix for [e778e3f804]: Parsing of "profile" for TIP #656 file: 3b21d756de check-in: [82377ce539] user: jan.nijtmans branch: bug-e778e3f804, size: 324162
15:39
Merge 8.7 file: 216fd81e4e check-in: [99cfb068bb] user: apnadkarni branch: tip-656, size: 323829
13:36
Merge 8.7 file: f2993340de check-in: [5b43eb89dd] user: jan.nijtmans branch: main, size: 320516
13:33
Put back testcase io-52.20, and re-fix [4a7397e0b3] file: 5a20f757d5 check-in: [9c0db3d168] user: jan.nijtmans branch: core-8-branch, size: 326051
13:24
Merge 8.7 file: d99076db5c check-in: [f0039dade9] user: apnadkarni branch: tip-656, size: 323607
12:45
Merge 8.7 file: 360d22f55b check-in: [01f497c926] user: jan.nijtmans branch: main, size: 320294
12:43
Missing ')' file: d9664bb041 check-in: [2a0db90a03] user: jan.nijtmans branch: core-8-branch, size: 325829
12:20
Merge 8.7 file: 8c27f8438b check-in: [917e233bd3] user: jan.nijtmans branch: main, size: 320293
12:16
Restore previous behavior for non-blocking mode, as for this mode the semantics of [read]/[gets] were not broken. This was the 'some agreement'. The change in line 8286 is necessary for both blocking and non-blocking mode: Whenver the encoding change we need to reset the CHANNEL_ENCODING_ERROR flag. file: 9a0b9d0436 check-in: [b4d64ccac5] user: jan.nijtmans branch: core-8-branch, size: 325828
11:57
Reverted [d156af9fb76dd2f4] and removed tests io-52.20 io-75.6 io-75.7, as this commit, intended to fix issue [b8f575aa2398b0e4], breaks the semantics of [read] and [gets]. Such a change would require an accepted TIP. See [b8f575aa2398b0e4] for further discussion. jn: @pouryorick See [b8f575aa2398b0e4] for the reason why this commit is not appropriate: It gets core-8-branch back in the buggy state it was, without even providing a real solution everyone agrees on. You shouldn't revert my patch just because I reverted yours. pooryorick: As I explained, the reason for this reversion is that it hard-codes an unapproved change in the semantics of [read] and [gets] into the test suite. Jan, your statement that it's a "revenge" reversion is false. I spent a month trying to find some alternative to this reversion before actually performing it. A commit that codifes in its tests changes in semantcs to [read]/[gets] simply shouldn't be on core-8-branch. file: 950a47245d check-in: [839cd83777] user: pooryorick branch: main, size: 320154
2023-02-27
11:59
Fix [3d01d51bc4]: Tcl 9: Cannot write large strings to file. Also some size_t -> Tcl_Size changes. file: 4a25f97988 check-in: [186e4d9317] user: jan.nijtmans branch: main, size: 320225
2023-02-26
14:27
Merge 9.0. Adapt more test-cases, to see what's remaining file: 9331265388 check-in: [09b3a7a3dd] user: jan.nijtmans branch: make-strict-the-default, size: 318998
06:26
Minor refactor, add tests file: 8c411d3156 check-in: [93ba406eed] user: apnadkarni branch: bug-3d01d51bc4, size: 320131
2023-02-25
17:23
Fix large writes to file. Need to break into INT_MAX size chunks. file: 73df3f7ce0 check-in: [57fb62005d] user: apnadkarni branch: bug-3d01d51bc4, size: 320412
03:03
Compiles and runs. Tests still to be ported. file: 63586b4973 check-in: [c057c79d2b] user: apnadkarni branch: tip-656-tcl9, size: 318131
2023-02-23
21:20
Remove left-over traces of [0a74820b6d], which was merged into the apn-encoding-profile and landed into tip-656. This commit was merged premature into core-8-branch, leaving a [dab7fd5973|memory leak] file: 315ca3e06b check-in: [ff7923a914] user: jan.nijtmans branch: bug-dab7fd5973, size: 323538
2023-02-22
17:07
port jan-encoding-profile to 9.0 file: 7c153012ac check-in: [900d53d140] user: jan.nijtmans branch: jan-encoding-profile-for-9.0, size: 322175
2023-02-19
21:46
Experiment: Make "strict" the default for 9.0. Some trivial testcases are adapted, but the crucial ones are left as-is. Warning: If your are a supporter of "making -strict the default for 9.0", then this branch is (not) for you. You might be disappointer! file: de789f5df1 check-in: [0a3ee3a1da] user: jan.nijtmans branch: make-strict-the-default, size: 318346
2023-02-18
09:52
Merge 8.7 file: 20d946ac30 check-in: [7bc34f4661] user: pooryorick branch: mistake, size: 319687
09:33
Reverted [d156af9fb76dd2f4] and removed tests io-52.20 io-75.6 io-75.7, as this commit, intended to fix issue [b8f575aa2398b0e4], breaks the semantics of [read] and [gets]. Such a change would require an accepted TIP. See [b8f575aa2398b0e4] for further discussion. jn: @pouryorick See [b8f575aa2398b0e4] for the reason why this commit is not appropriate: It gets core-8-branch back in the buggy state it was, without even providing a real solution everyone agrees on. You shouldn't revert my patch just because I reverted yours. pooryorick: As I explained, the reason for this reversion is that it hard-codes an unapproved change in the semantics of [read] and [gets] into the test suite. Jan, your statement that it's a "revenge" reversion is false. I spent a month trying to find some alternative to this reversion before actually performing it. file: fb3a50149f check-in: [ff103e776b] user: pooryorick branch: mistake, size: 325689
2023-02-17
19:12
Make a start implementing "replace" file: 6392ac1ab7 check-in: [8965167358] user: jan.nijtmans branch: jan-encoding-profile, size: 326804
2023-02-16
20:54
parsing simplifications file: cabc0d096e check-in: [4c3fc8cc5a] user: jan.nijtmans branch: jan-encoding-profile, size: 325274
2023-02-15
08:10
Merge 9.0 file: 63a767a558 check-in: [24d64bf0f1] user: jan.nijtmans branch: tip-626, size: 319761
08:07
Merge 8.7 file: 234f6836c4 check-in: [fe54733688] user: jan.nijtmans branch: jan-encoding-profile, size: 325084
05:24
Merge 8.7 file: 06c73fcfd7 check-in: [d4772edf05] user: apnadkarni branch: tip-656, size: 325217
2023-02-14
11:39
Fix uniqueness parsing fconfigure -encoding / -encodingprofile options file: a0e5c792cc check-in: [66074c9b6d] user: apnadkarni branch: tip-656, size: 324900
2023-02-13
14:06
merge 8.7 file: 13b3995977 check-in: [49849c85bb] user: dgp branch: core-8-7-b1-rc, size: 327439
2023-02-12
01:00
Merge 8.7 file: ab39810c5e check-in: [2d036d968c] user: jan.nijtmans branch: main, size: 319758
2023-02-10
20:22
Proposed fix (and testcases) for [4a7397e0b3]: Tcl 9: fcopy with -strictencoding 1 UTF-8 channels file: b2f243d333 check-in: [0f04d39da4] user: jan.nijtmans branch: bug-4a7397e0b3, size: 325760
17:07
Phase out (almost) STRICT and NOCOMPLAIN flags. file: c227579292 check-in: [4a2770b48e] user: apnadkarni branch: apn-encoding-profile, size: 324900
2023-02-09
17:04
Modify encoding C API to use profiles (in progress) file: 8727bf4b98 check-in: [f1ce788bea] user: apnadkarni branch: apn-encoding-profile, size: 326674
2023-02-07
17:10
Merge core-8-branch file: 7d1e493fb2 check-in: [51dd9f7cd1] user: apnadkarni branch: apn-encoding-profile, size: 326486
2023-02-06
14:09
keep channel options in alphabetical order file: a22c17dc63 check-in: [4b5c2ec6fe] user: jan.nijtmans branch: jan-encoding-profile, size: 324767
2023-02-05
23:22
Fix handling of default profile. Also fix many test-cases file: f5c798251c check-in: [7eb72e7739] user: jan.nijtmans branch: jan-encoding-profile, size: 324753
2023-02-03
22:15
Fix for [b8f575aa2398b0e4] and [154ed7ce564a7b4c], double-[read]/[gets] problem. Partial-read functionality commented out. jn: First, see broken build [https://github.com/tcltk/tcl/actions/runs/4082362246/jobs/7036637005|here]. Second: Moving this to core-8-branch is getting TIP #653 into 8.7 without being voted upon. It's simply not ready. pooryorick: That second statement is false. The parts of this fix that implement TIP #653 are specifically commented out. file: 71ba30872d check-in: [104b05b17c] user: pooryorick branch: py-b8f575aa23-nopartial, size: 327122
2023-02-02
16:43
Update tests to use -encodingprofile file: 35e8f4133c check-in: [e92847da6f] user: apnadkarni branch: apn-encoding-profile, size: 324807
15:37
Change encoding error options to fconfigure to encoding profiles file: 8afcbad7b1 check-in: [2127d4e684] user: apnadkarni branch: apn-encoding-profile, size: 324807
2023-01-31
07:49
SetFlag -> GotFlag (since SetFlag always returns 1, this is nonsence in an if() statement). Also add test-case, showing that it was actually wrong, in behavior too. file: 03f63f5629 check-in: [df4e2de49c] user: jan.nijtmans branch: core-8-branch, size: 325443
2023-01-25
17:11
Merge 9.0 file: 5e9db7742a check-in: [8ec9969434] user: jan.nijtmans branch: tip-626, size: 319444
2023-01-24
20:00
First part of fix for [4a7397e0b3]. Not complete yet. file: dbe5f4a693 check-in: [5d433e183c] user: jan.nijtmans branch: core-8-branch, size: 325416
2023-01-23
20:41
Rename [encoding convert*] option "-nocomplain"/"-ignore" to "-pass", and "-nocomplainencoding"/"-encodingignore" to "-encodingpass" file: 9354d7888e check-in: [ddc84c7563] user: pooryorick branch: trunk-encodingdefaultorig, size: 320137
10:48
A branch for fixing TIP 346/601 issues, and other issues related to Unicode encoding, while retaining the default of not raising an error when invalid data for the encoding occurs. file: 66c6c36560 check-in: [6ff8e6acdb] user: pooryorick branch: trunk-encodingdefaultorig, size: 320145
2023-01-02
23:12
Merge py-b8f575aa23: Fix for [154ed7ce56], Tcl 9: [gets] on -strictencoding 1 configured channel. file: 61075f4ae4 check-in: [8c5d9bcc6e] user: pooryorick branch: py-b8f575aa23, size: 326848
21:07
Fix for [154ed7ce56], Tcl 9: [gets] on -strictencoding 1 configured channel. file: 303323e738 check-in: [003c9e1f2e] user: pooryorick branch: trunk-encodingdefaultstrict, size: 320068
2022-12-31
00:44
Merge py-b8f575aa23. file: b48427d4ef check-in: [a69aa709b5] user: pooryorick branch: trunk-encodingdefaultstrict, size: 319146
2022-12-30
20:27
Fix DoReadChars() to correctly discard encoding errors after eofchar has been seen, and add new test, io-75.8.invalid. file: 3a637bc6bc check-in: [4888129681] user: pooryorick branch: py-b8f575aa23, size: 325923
2022-12-29
22:59
Arrange new code in DoReadChars to ensure that final steps are always taken. file: 4f060c0698 check-in: [0221bfae40] user: pooryorick branch: py-b8f575aa23, size: 325450
18:11
Strict encoding conformance everywhere by default. Full test suite passes. file: d3a4ecef84 check-in: [49b91d37a6] user: pooryorick branch: trunk-encodingdefaultstrict, size: 318913
2022-12-28
23:35
Unify TCL_ENCODING_STRICT and TCL_ENCODING_NOCOMPLAIN, and make strict encoding conformance the default everywhere. file: 432e7ccd8b check-in: [8252783124] user: pooryorick branch: trunk-encodingdefaultstrict, size: 318389
12:07
A better fix for [b8f575aa23], as it maintains the expectation that synchronous [read] results in an error when invalid data is encountered. someone other than pooryorick: Pushed this check-in back on to a review branch. It needs more baking/review. As is, it makes two tests fail, and it introduces a new element "-result" to the return options dictionary. file: 0d2ea97c31 check-in: [00995080d6] user: pooryorick branch: py-b8f575aa23, size: 325498
2022-12-24
14:36
First part of fix for [4a7397e0b3]: Take flags into account when deciding to do a binary fcopy or not. TODO: Handle generating an exception file: d99dc2d713 check-in: [7dcc1eadb6] user: jan.nijtmans branch: bug-4a7397e0b3, size: 319441
2022-12-21
23:05
Merge 9.0 file: 17cb6a16df check-in: [01e3112cfb] user: jan.nijtmans branch: tip-626, size: 319194
2022-12-19
15:44
Merge 8.7 file: 965050c130 check-in: [a09f704e58] user: jan.nijtmans branch: main, size: 319191
15:40
When changing the -nocomplainencoding or -strictencoding settings of a channel, reset the CHANNEL_NEED_MORE_DATA and CHANNEL_ENCODING_ERROR flags, so we can continue reading the channel and find out what's going on. file: b991451bee check-in: [24aa8e31b3] user: jan.nijtmans branch: core-8-branch, size: 325166
2022-12-15
14:39
Merge 8.7 file: 1acccfd0d8 check-in: [e98ade44bf] user: jan.nijtmans branch: main, size: 319053
14:38
Fix Tcl_BadChannelOption(), new -nocomplainencoding and -strictencoding options were still missing (reported by Rolf Ade, thanks!) file: bf93bf4e45 check-in: [834ed19993] user: jan.nijtmans branch: core-8-branch, size: 325028
2022-12-13
07:53
Clarification for Rolf file: 9252a02971 check-in: [05414ca784] user: jan.nijtmans branch: rfe-17a1cb8d6e, size: 325210
2022-12-09
23:27
Merge 8.7 file: fb97d975d3 check-in: [d46f48c645] user: jan.nijtmans branch: main, size: 319019
22:27
Merge 8.7. Adapt testcase, showing that after an encoding error we can change encoding and continue reading file: f662ae0aa7 check-in: [209b09b069] user: jan.nijtmans branch: bug-b8f575aa23, size: 324994
10:22
Partial solution for [b8f575aa23]. Still missing: 1) testcases. 2) What if both EOF and ENCODING_ERROR happens (because there is both an eofchar and an invalid byte in the stream) file: f4c2e7e8dd check-in: [6808b459d3] user: jan.nijtmans branch: bug-b8f575aa23, size: 324971
2022-12-02
11:37
Merge 9.0 file: 1dd08c85df check-in: [18885b9958] user: jan.nijtmans branch: tip-626, size: 318951
08:35
Oops, that's the wrong one ... file: 62422c0766 check-in: [6f87e45644] user: jan.nijtmans branch: main, size: 318948
08:19
Make options -nocomplain and -strictencoding truly independant. Leftover from initial implementation. Noted by Rolf Ade (thanks!) file: 9066c2dd3a check-in: [4fdd86e7a7] user: jan.nijtmans branch: main, size: 318952
2022-12-01
14:23
Merge 9.0 file: 9ab8377abb check-in: [7787a1c006] user: jan.nijtmans branch: tip-626, size: 319057
2022-11-28
16:13
Merge 9.0 file: 922bce96c4 check-in: [9ee2792e3b] user: jan.nijtmans branch: tip-636-tcl9-644, size: 319052
2022-11-25
22:08
Merge 8.7 file: d258d6adc7 check-in: [3292a08532] user: jan.nijtmans branch: main, size: 319054
22:00
(partial) fix for [6978c01b65] file: f05a01fb37 check-in: [a82c8ffd37] user: jan.nijtmans branch: core-8-branch, size: 324923
08:29
Handle closeProc == NULL the same as closeProc == TCL_CLOSE2PROC in stead of panicing. Backported from 8.7 (undocumented feature) file: 76f22c2f69 check-in: [0459d72578] user: jan.nijtmans branch: core-8-6-branch, size: 315306
2022-11-24
21:48
TCL_OBJTYPE_V0_INIT -> TCL_OBJTYPE_V0 (See TIP #644). Remove Tcl_SavedResult (See TIP #640) file: ac6863f243 check-in: [ca003bccb7] user: jan.nijtmans branch: tip-636-tcl9-644, size: 318419
20:31
Sync with trunk file: 1c8800100b check-in: [866c464f9e] user: griffin branch: tip-636-tcl9-644, size: 318424
14:38
Merge 9.0 file: c22cdb4c8f check-in: [334190e9b7] user: jan.nijtmans branch: tip-626, size: 318424
14:05
Use Tcl_GetByteArrayFromObj(... in stead of Tcl_GetBytesFromObj(NULL,.... Add some more error-checking for invalid byte-arrays file: 7951dfd400 check-in: [3e18a46195] user: jan.nijtmans branch: main, size: 318421
03:32
Sync with trunk file: 9b50998c1a check-in: [3c349bb440] user: griffin branch: tip-636-tcl9-644, size: 318358
2022-11-23
21:12
Merge 8.7 file: 576aa45ba4 check-in: [2b17ac5d49] user: jan.nijtmans branch: tip-626, size: 318358
21:03
Fix [da63e4c1e]: Crash in Tcl_WriteChars(). Make everything compile (again) with a C++ compiler. file: 0c96faf0f2 check-in: [3539aef815] user: jan.nijtmans branch: main, size: 318355
20:41
-1 -> TCL_INDEX_NONE file: 42b054a5f3 check-in: [a723fb55e7] user: jan.nijtmans branch: core-8-branch, size: 324290
15:21
Proposed fix for [da63e4c1e]. First version, not 100% as expected yet. file: 27503c9b2f check-in: [58883dde6d] user: jan.nijtmans branch: bug-da63e4c1e, size: 317863
12:15
Make "read" throwing a "illegal byte sequence" exception. Doesn't work for "gets" yet. file: 3f3e254a31 check-in: [b9ed73b12c] user: jan.nijtmans branch: bug-6978c01b65, size: 324204
09:26
Merge 8.7 file: 354aed2338 check-in: [e649f5961d] user: jan.nijtmans branch: main, size: 317744
09:24
Change assert, since the new flag CHANNEL_ENCODING_ERROR could be set as well file: 4fb551caa8 check-in: [c43ed6731c] user: jan.nijtmans branch: core-8-branch, size: 323571
00:09
Merge 8.7 file: 5a369f2392 check-in: [3033bfee19] user: jan.nijtmans branch: main, size: 317694
2022-11-20
23:27
indenting file: 7a5a415a9e check-in: [656a43beb3] user: jan.nijtmans branch: bug-6978c01b65, size: 323521
23:22
Merge 8.7 file: 5e2e5ad956 check-in: [8f4f8eb866] user: jan.nijtmans branch: bug-6978c01b65, size: 323512
2022-11-19
16:29
Merge 9.0 file: 69a1a4da3d check-in: [32aebe8054] user: jan.nijtmans branch: tip-626, size: 317383
2022-11-09
13:45
Merge trunk. Also update Tcl_ObjType.version to match TIP 644 file: c7d51dac6f check-in: [67db36998a] user: apnadkarni branch: tip-644, size: 317380
2022-11-06
11:19
Rebase TIP #626 to latest 9.0. Change Tcl version number from 9.0 to 9.1a0 file: bb7145510a check-in: [efcf7c37fe] user: jan.nijtmans branch: tip-626, size: 317363
2022-11-04
22:47
Implement abstractlist with tip-644 file: 0b42c7484a check-in: [3aa22fe8ab] user: griffin branch: tip-636-tcl9-644, size: 317383
2022-11-01
08:28
rebase to latest trunk file: 4b58802867 check-in: [14166645c7] user: jan.nijtmans branch: tip-644-alt, size: 317367
08:26
Don't bother to provide a TCL_OBJTYPE_SIZE macro file: 0ecb954cae check-in: [04e8efd4ac] user: jan.nijtmans branch: tip-644-alt, size: 319233
2022-10-31
22:57
Merge 8.7 file: 422cf628c5 check-in: [421f9ad65b] user: jan.nijtmans branch: line-editing, size: 326816
17:12
Make sure the build works if USE_LINENOISE is #undef'ed file: 4843b8a2c2 check-in: [4cfce4825b] user: marc_culler branch: line-editing, size: 326628
2022-10-29
14:08
Simplify -eofchar parsing (just check for " {}" at the end, in stead of full list parsing) file: a8f9f37a88 check-in: [b6a0f20674] user: jan.nijtmans branch: main, size: 317360
13:56
Fix fork file: 82d509c28d check-in: [400d629521] user: culler branch: line-editing, size: 326580
2022-10-28
17:38
Make command line editing work with Tk, except for some termios issues at exit. file: 1efa94b2f3 check-in: [a662802a1e] user: culler branch: line-editing, size: 326578
11:18
TIP #646 correction: let "fconfigure $chan -eofchar" return a single character, not a list element file: b770b4788f check-in: [6421442176] user: jan.nijtmans branch: main, size: 318003
2022-10-27
07:24
Add lininoise directory. Fix 2 gcc warnings file: 4b7ca085e5 check-in: [4f49c8a0c9] user: jan.nijtmans branch: line-editing, size: 326574
2022-10-26
11:38
Remove detritus. file: 6e699cfd69 check-in: [b9dc6a9258] user: culler branch: line-editing, size: 326572
03:24
Move Tcl_GetLine and Tcl_GetLineObj to tclIO.c file: 8661af69d4 check-in: [662374c0f7] user: culler branch: line-editing, size: 326592
2022-10-24
11:47
Another possible approach file: 402cef4fa4 check-in: [dc7f554cb0] user: jan.nijtmans branch: tip-644-alt, size: 319248
2022-10-18
10:25
Allow any single character for -eofchar, even if it's not a valid list file: bc7ddd0682 check-in: [62da555aa8] user: jan.nijtmans branch: tip-646-for-87, size: 323207
10:12
Allow any single character for -eofchar, even if it's not a valid list file: 353ee714ae check-in: [be3ad3fea5] user: jan.nijtmans branch: tip-646, size: 317993
2022-10-17
20:18
Merge 9.0. More strict -eofchar parsing file: c4d4c575e6 check-in: [c6c72b2646] user: jan.nijtmans branch: tip-646, size: 317823
2022-10-16
17:56
Minor change to -eofchar handling file: 209b75df7d check-in: [0630d12baf] user: jan.nijtmans branch: tip-646-for-87, size: 322998
11:10
new TIP about -eofchar handling file: 403d69c0bb check-in: [6972c7e82c] user: jan.nijtmans branch: tip-646, size: 317796
2022-10-11
16:45
Merge 9.0 file: 1e14ef59e9 check-in: [02099b9569] user: apnadkarni branch: tip-644, size: 319246
15:48
Make TCL_ENCODING_STRICT and TCL_ENCODING_NOCOMPLAIN work independant from each other (suggested by Harald Oehlmann) file: ef1bba33ee check-in: [ac64a022e6] user: jan.nijtmans branch: main, size: 319226
15:07
TIP 644 - Make Tcl_ObjType extensible file: b8dfaa3a02 check-in: [6d1d103cf6] user: apnadkarni branch: tip-644, size: 319182
06:22
Making a start fixing [6978c01b65]: Channel encoding difference 8.6 <-> 9.0 file: 537fe9037a check-in: [f36d6aec92] user: jan.nijtmans branch: bug-6978c01b65, size: 323324
2022-10-10
11:20
Merge 8.7 file: 9a4c95bcb7 check-in: [9d354f0991] user: jan.nijtmans branch: main, size: 319162
11:08
Slight improvement to TIP #346/#633 combination: Now -strictencoding 1 automatically sets -nocomplainencoding to 0, while -nocomplainencoding 1 automatically sets strictencoding to 0. This way, they can never both be set. file: 65e993096b check-in: [329637dcc5] user: jan.nijtmans branch: core-8-branch, size: 323019
2022-10-09
16:16
Merge 8.7 file: 455b052c81 check-in: [e37e9b9a2b] user: jan.nijtmans branch: main, size: 319521
15:11
TIP #633: configure channel about channel encoding error reporting mode file: c2ef0bad69 check-in: [968bcbecd8] user: jan.nijtmans branch: core-8-branch, size: 323300
2022-10-08
17:17
Merge 9.0 file: f0264bdffe check-in: [74abec9977] user: jan.nijtmans branch: tip633-tcl9-fconfigure-strictencoding, size: 319526
17:05
Merge 8.7 file: 4038a680c3 check-in: [be31c2a99d] user: jan.nijtmans branch: tip633-fconfigure-tolerantencoding, size: 321971
17:02
Merge 8.7 file: 5b6b1539b9 check-in: [20347a792f] user: jan.nijtmans branch: main, size: 317722
17:01
TIP #346 bugfix: -strictencoding should be resetable too file: 9c7da7f6f0 check-in: [1b80921f3b] user: jan.nijtmans branch: core-8-branch, size: 320824
16:44
Merge 9.0 file: 99f7b55d46 check-in: [f34a14695a] user: jan.nijtmans branch: tip633-tcl9-fconfigure-strictencoding, size: 318566
16:08
Merge 8.7 file: d6706abba6 check-in: [05e9f75686] user: jan.nijtmans branch: tip633-fconfigure-tolerantencoding, size: 321637
15:43
Merge 8.7 file: d923558573 check-in: [58f6cbaca1] user: jan.nijtmans branch: main, size: 317388
14:46
TIP #346: Error on Failed String Encodings file: 2329c4c985 check-in: [a106c26dd5] user: jan.nijtmans branch: core-8-branch, size: 320490
00:10
-nocomplainencoding and -strictencoding are incompatible file: d536da4ac4 check-in: [a2eaf05cd4] user: jan.nijtmans branch: tip633-fconfigure-tolerantencoding, size: 321751
2022-10-07
22:56
Merge 9.0 file: 38c2e511f3 check-in: [bd913fb17a] user: jan.nijtmans branch: tip633-tcl9-fconfigure-strictencoding, size: 317894
22:49
Merge tip-346 file: da902f493a check-in: [fc99b89662] user: jan.nijtmans branch: tip633-fconfigure-tolerantencoding, size: 321182
18:59
Merge 8.7 file: e1486f7810 check-in: [ba23b468ed] user: jan.nijtmans branch: tip-346, size: 320606
15:21
Merge 8.7 file: 989939abc7 check-in: [b35370f1d5] user: jan.nijtmans branch: main, size: 316227
15:18
Use GotFlag/SetFlag/ResetFlag macro's wherever appropriate file: 8fe2e11bb7 check-in: [98cddde746] user: jan.nijtmans branch: core-8-branch, size: 319345
2022-10-05
02:28
merge [trunk] file: abb70230b0 check-in: [248b1feddb] user: bch branch: bch_sign_and_width, size: 316804
2022-09-26
15:06
Merge 9.0 file: d18ae60498 check-in: [e868215b25] user: jan.nijtmans branch: tip-626, size: 316251
12:36
Merge 8.7 file: 9967865a74 check-in: [f9545122b4] user: jan.nijtmans branch: tip633-fconfigure-tolerantencoding, size: 319942
12:35
Merge 9.0 file: 71887a54e9 check-in: [68b69eb613] user: jan.nijtmans branch: tip633-tcl9-fconfigure-strictencoding, size: 317915
12:31
Merge 8.7 file: 6040b33a86 check-in: [1aa9452e1d] user: jan.nijtmans branch: tip-346, size: 320627
07:43
Merge 8.7 file: 911b0dd718 check-in: [42609ef89b] user: jan.nijtmans branch: main, size: 316248
07:34
TIP #220: Escalate Privileges in VFS Close Callback file: 891763bf40 check-in: [2af94cda95] user: jan.nijtmans branch: core-8-branch, size: 319366
2022-09-22
11:26
Add -strictencoding option to channels. Thanks to Harald Oehlman for his example (largely copied). No testcases yet file: e4cbd0598f check-in: [6edbb53f0a] user: jan.nijtmans branch: tip-346, size: 319082
2022-09-21
17:50
merge [trunk] file: 14d33a9dfa check-in: [ab16261020] user: bch branch: bch_sign_and_width, size: 315259
2022-09-20
12:09
rebase to latest trunk file: cab449221c check-in: [db829e5126] user: jan.nijtmans branch: tip633-tcl9-fconfigure-strictencoding, size: 316370
12:07
rebase to latest core-8-branch file: fe81ac4f21 check-in: [216977961c] user: jan.nijtmans branch: tip633-fconfigure-tolerantencoding, size: 318397
2022-09-19
17:45
TIP633 fconfigure -nocomplainencoding (TCL8.7): replace "-strictencoding 0" by "-nocomplainencoding 1". file: 3866104d17 check-in: [42dcb747ef] user: oehhar branch: tip633-fconfigure-tolerantencoding, size: 318430
17:40
TIP633 fconfigure -nocomplainencoding (TCL9): replace "-strictencoding 0" by "-nocomplainencoding 1". file: 86d61c5f68 check-in: [68c3e3c92f] user: oehhar branch: tip633-tcl9-fconfigure-strictencoding, size: 316403
2022-09-13
16:11
Merge 9.0 file: 23c79cc075 check-in: [7cf5b22032] user: jan.nijtmans branch: tip-626, size: 314706
08:31
Merge 8.7 file: 35859d4e93 check-in: [da79af4aa0] user: jan.nijtmans branch: main, size: 314703
08:07
Merge 8.6 file: eae22894b2 check-in: [af9bba6154] user: jan.nijtmans branch: core-8-branch, size: 317821
2022-09-12
14:50
Merge 8.7 file: 1342cd6c24 check-in: [afe28e47c1] user: oehhar branch: tip633-fconfigure-tolerantencoding, size: 318414
14:47
TIP633 fconfigure -strictencoding: also implement read part file: e45098e666 check-in: [995f1b858d] user: oehhar branch: tip633-tcl9-fconfigure-strictencoding, size: 316430
14:28
(adapted) Testcase and fix for [1073daf086]: Bug in handling illegal utf-8 sequence file: 1412a110f0 check-in: [7c67f503d0] user: jan.nijtmans branch: bug-1073daf086, size: 315046
10:59
TIP633 fconfigure -strictencoding: move transfer over the loop. Adapt test suite to use hex results to prevent blocking on console output. file: 022af97419 check-in: [6fb44cf582] user: oehhar branch: tip633-tcl9-fconfigure-strictencoding, size: 315616
10:47
TIP633 fconfigure -strictencoding: implement write -strictencoding 0. file: 79e215d843 check-in: [63b83010a8] user: oehhar branch: tip633-tcl9-fconfigure-strictencoding, size: 315607
10:16
Merge main file: 770a68f2bd check-in: [5737b887f4] user: oehhar branch: tip633-tcl9-fconfigure-strictencoding, size: 315342
2022-09-11
21:47
Merge 8.7 file: 686d595b1b check-in: [a454868d35] user: jan.nijtmans branch: main, size: 314736
21:37
complete the fix file: 320fbdf6ff check-in: [c76fc30fd0] user: jan.nijtmans branch: bug-6978c01b65, size: 317854
13:45
Ticket [6978c01b65]: write not encodable character->report to script level Test io-75.5 now ok. file: 4766928d41 check-in: [e67a247dd4] user: oehhar branch: main, size: 314629
09:55
TIP633 fconfigure -strictencoding: TCL 9 command line implementation file: 7f5dfe155c check-in: [b00490b063] user: oehhar branch: tip633-tcl9-fconfigure-strictencoding, size: 314878
09:27
TIP633 fconfigure -strictencoding: make only "-strictencoding 0" possible on TCL 8.7 file: 09493a9478 check-in: [3bfd5ebdfe] user: oehhar branch: tip633-fconfigure-tolerantencoding, size: 317950
08:55
TIP633 fconfigure -strictencoding: change option name to "-strictencoding". file: 48795600dd check-in: [49833e6ecb] user: oehhar branch: tip633-fconfigure-tolerantencoding, size: 318182
2022-09-07
11:45
Revive TIP #220 implementation: Escalate Privileges in VFS Close Callback file: ada0280c9c check-in: [afc95211b0] user: jan.nijtmans branch: tip-220, size: 318935
2022-08-25
20:07
TIP633 fconfigure -tolerantencoding: set tolerant 8.7 default value. file: 377b96a7dc check-in: [0785157dc1] user: oehhar branch: tip633-fconfigure-tolerantencoding, size: 318188
2022-08-22
15:48
Merge 9.0 file: dff4b2ea1b check-in: [38ece79e87] user: jan.nijtmans branch: tip-626, size: 314275
2022-08-18
20:20
Correct option shortcut value file: 5966812e9a check-in: [8548458532] user: oehhar branch: tip633-fconfigure-tolerantencoding, size: 317996
20:11
mistake file: 77beb26105 check-in: [cefdc8fae1] user: oehhar branch: tip833-fconfigure-tolerantencoding, size: 317996
2022-08-04
15:26
Fix a case of lf not being flushed in certain cases when the crlf sequence gets split across two buffers on channels in crlf mode with line buffering [https://core.tcl-lang.org/tcllib/tktview?name=c9d8a52fe] file: 3012c59347 check-in: [658a9d7cb5] user: max branch: core-8-branch, size: 317390
15:15
Fix a case of lf not being flushed in certain cases when the crlf sequence gets split across two buffers on channels in crlf mode with line buffering [https://core.tcl-lang.org/tcllib/tktview?name=c9d8a52fe] file: c48daf66d6 check-in: [cf8be3fc82] user: max branch: main, size: 314272
15:09
Fix a case of lf not being flushed in certain cases when the crlf sequence gets split across two buffers on channels in crlf mode with line buffering [https://core.tcl-lang.org/tcllib/tktview?name=c9d8a52fe] file: 2e68c6badf check-in: [2e8fc36e39] user: max branch: core-8-6-branch, size: 315074
2022-07-28
10:52
Merge 8.7 file: 50c56d804d check-in: [55a80617ef] user: jan.nijtmans branch: main, size: 314272
10:14
Merge 8.6 file: fd49bc97ea check-in: [2836af2ea9] user: jan.nijtmans branch: core-8-branch, size: 317390
2022-07-22
18:49
restore FF-char (fossil seems to loss form feed if commits with convertion from CRLF to LF) file: 4343167f02 check-in: [4a796d6ae3] user: sebres branch: bug-b3977d199b, size: 315074
18:38
EOF seemed to reset INPUT_SAW_CR previously, so do it now explicitely (satisfying the test ?chan?io-6.46) file: a9d08278ec check-in: [341c5f78a7] user: sebres branch: bug-b3977d199b, size: 315074
17:41
fixes [b3977d199b] - don't reset INPUT_SAW_CR unless the buffer get really translated (missing "\r" caused that flag got reset too early, because the translation takes place at next round by EOF) file: d7a18deaba check-in: [d2a8078086] user: sebres branch: bug-b3977d199b, size: 315061
2022-06-08
12:40
Merge 9.0 file: e8c758401a check-in: [2532f27b23] user: jan.nijtmans branch: tip-626, size: 314217
10:23
TIP #616: Tcl lists > 2^31 elements file: 911587190a check-in: [574358cda4] user: jan.nijtmans branch: main, size: 314214
2022-05-25
22:20
Many int-> size_t file: 48bd20d861 check-in: [7062de3ba7] user: jan.nijtmans branch: tip-626, size: 314225
2022-05-17
13:27
Merge 9.0 file: 8153f143a1 check-in: [e563372259] user: jan.nijtmans branch: tip-616, size: 314222
11:17
Merge 8.7 file: 682ad4759f check-in: [74c6a378ca] user: jan.nijtmans branch: main, size: 313977
09:32
Rename macro's TclListObjGetElements -> TclListObjGetElementsM and TclListObjLength -> TclListObjLengthM (prevent conflict with TIP #616) file: 2f9cc736c0 check-in: [eaf93525a5] user: jan.nijtmans branch: core-8-branch, size: 317332
2022-05-01
22:41
merge [trunk] file: 4ff8004fde check-in: [3b9626d07b] user: bch branch: bch_sign_and_width, size: 314532
2022-04-26
15:59
Merge 9.0 file: 99faa4b167 check-in: [dda26bfcce] user: jan.nijtmans branch: tip-616, size: 314221
12:22
Tcl_GetIndexFromObjStruct -> Tcl_GetIndexFromObj. Don't use braces around (Tcl_GetBytesFromObj) file: 803535a6ad check-in: [b76b65a1af] user: jan.nijtmans branch: main, size: 313976
07:22
Merge 9.0 file: 8970a945a0 check-in: [4bf1dcd5bf] user: jan.nijtmans branch: tip-616, size: 314203
07:18
Merge 8.7 file: 1e4d31adda check-in: [588d689f08] user: jan.nijtmans branch: full-utf-for-87, size: 317331
2022-04-20
20:24
merge [trunk] file: d1cda414f2 check-in: [3550542d19] user: bch branch: bch_sign_and_width, size: 314514
12:50
Merge 8.7 file: 02abceec20 check-in: [bd0ef87d4d] user: jan.nijtmans branch: main, size: 313958
12:08
Fix for [a12ad5c4bd7efcf2], buffer allocation on every call to Write(). file: 8a177a629a check-in: [d699b9b145] user: pooryorick branch: core-8-branch, size: 317333
10:20
Merge 8.7 file: 12c0af028e check-in: [06c121d0f3] user: jan.nijtmans branch: main, size: 313399
08:49
Remove some unnecessary buffer reference counting in Write(). The reference counting in FlushChannel() has got it covered. file: a8daab3050 check-in: [a62764efd4] user: pooryorick branch: core-8-branch, size: 316774
2022-03-29
09:30
Merge 9.0 file: 9006f820af check-in: [cb2a7d7c43] user: jan.nijtmans branch: tip-616, size: 313774
2022-03-28
12:24
Merge 8.7. Register "string" objType when TCL_UTF_MAX=3 (fixes regression in previous commit) file: 0356ee2d9f check-in: [75efdec8f4] user: jan.nijtmans branch: full-utf-for-87, size: 316902
11:48
Merge 8.7 file: 59feb07133 check-in: [f0c5b7eabd] user: jan.nijtmans branch: main, size: 313529
11:39
More usage of TCLFLEXARRAY. Make current_malloc_packets/maximum_malloc_packets type size_t file: ac3888e0b3 check-in: [53ab5e4b9f] user: jan.nijtmans branch: core-8-branch, size: 316904
10:07
Fix some compiler warnings file: c003b035df check-in: [9a1423505b] user: jan.nijtmans branch: tip-616, size: 313748
2022-03-23
16:57
Merge 9.0. More progress file: 48611ce8b1 check-in: [567f709b24] user: jan.nijtmans branch: tip-616, size: 313801
2022-03-20
20:17
Adapt Tcl_GetChannelBufferSize signature file: d85b078d4b check-in: [30a2502062] user: jan.nijtmans branch: tip-616, size: 313784
2022-03-16
23:08
Handle Tcl_UtfAtIndex file: c44b26c2f6 check-in: [4d35f48f7c] user: jan.nijtmans branch: full-utf-for-87, size: 316876
22:21
Handle Tcl_GetCharLength file: 265f5524df check-in: [2cce141084] user: jan.nijtmans branch: full-utf-for-87, size: 316877
2022-03-08
22:26
initial work at using signed-storage for cases where values can actually be signed. file: 6dd55f5771 check-in: [5030ee02cf] user: bch branch: bch_sign_and_width, size: 314059
2022-02-21
13:49
Some more int -> size_t file: 34a9d1f153 check-in: [e2a744bb10] user: jan.nijtmans branch: tip-616, size: 313745
2022-02-10
09:45
Merge 8.7 file: ffa840c370 check-in: [d7e83e77e8] user: jan.nijtmans branch: main, size: 313503
09:37
Merge 8.6 file: d4fa6ec6af check-in: [c03b7afd75] user: jan.nijtmans branch: core-8-branch, size: 316878
09:26
Use TclListObjLength/TclListObjGetElements in stead of Tcl_ListObjLength/Tcl_ListObjGetElements everywhere. This is slightly more efficient if the refered list already has the correct type file: 5dfe79216e check-in: [30cd3187fc] user: jan.nijtmans branch: core-8-6-branch, size: 315016
08:42
Same with TclListObjGetElements file: 79cf221f4b check-in: [5f2ed67ee3] user: jan.nijtmans branch: tip-616, size: 313520
2022-01-26
08:37
More WIP file: a1a26b3411 check-in: [3f003f3286] user: jan.nijtmans branch: tip-616, size: 313521
2022-01-24
20:54
More work in progress file: e2cae5e476 check-in: [e2382fa2c9] user: jan.nijtmans branch: tip-616, size: 313510
08:18
TIP #616: Tcl lists > 2^31 elements. WIP file: 1db7c81caf check-in: [ff0a9cf127] user: jan.nijtmans branch: tip-616, size: 313504
2021-11-07
14:52
Dodge a few macro games. file: 4da372191a check-in: [0e4cc79075] user: dgp branch: dgp-properbytearray, size: 313504
2021-11-05
23:03
merge trunk file: 0888af4486 check-in: [e77811cade] user: dgp branch: dgp-properbytearray, size: 313510
2021-10-19
14:42
IntRep -> InternalRep. Internal changes only. file: 6d572dff0b check-in: [40343f5fb6] user: jan.nijtmans branch: core-8-6-branch, size: 315017
2021-10-12
14:46
Merge 8.7 file: f8f09bd250 check-in: [c5b79ca673] user: jan.nijtmans branch: main, size: 313278
14:46
Merge 8.6 file: cb229452fc check-in: [f29ab3924a] user: jan.nijtmans branch: core-8-branch, size: 316879
2021-10-08
12:36
Merge trunk file: 867aebe2b7 check-in: [2b008d21a1] user: jan.nijtmans branch: dgp-properbytearray, size: 313557
08:40
Merge 8.7 file: 89f6a23719 check-in: [916029c89c] user: jan.nijtmans branch: main, size: 313325
2021-10-06
19:33
Change "IntRep" to "InternalRep", as discussed in the Tcl Core mailing list file: ee35f549fb check-in: [0509fa5750] user: jan.nijtmans branch: internalrep, size: 316926
2021-05-07
13:51
merge trunk file: 77e6bcc815 check-in: [33e1424f0f] user: dgp branch: dgp-properbytearray, size: 313457
12:30
Merge 8.7 file: 541f13161c check-in: [2f18255022] user: jan.nijtmans branch: main, size: 313225
2021-05-06
15:33
Merge 8.7. Improve errormessage when handling byte-errors in channels to (e.g.): error writing "stdout": illegal byte sequence file: 6f8d36ba42 check-in: [e919cd0c61] user: jan.nijtmans branch: encodings-with-flags, size: 316826
2021-05-03
20:52
merge trunk file: c011ff3ea5 check-in: [5023cb36bc] user: dgp branch: dgp-properbytearray, size: 313457
19:46
Merge 8.7 file: 93756983be check-in: [6f59da986d] user: jan.nijtmans branch: main, size: 313225
19:44
Merge 8.6 file: d0264e84e3 check-in: [efc0ac30bd] user: jan.nijtmans branch: core-8-branch, size: 316826
19:42
Fix [24b9181478]: Fix unsafe buffer lifetime file: 07990a5588 check-in: [f6468f7763] user: jan.nijtmans branch: core-8-6-branch, size: 314972
19:36
Fix [24b9181478]: Fix unsafe buffer lifetime file: d91e7221c1 check-in: [98af80f133] user: jan.nijtmans branch: core-8-5-branch, size: 296010
2021-04-28
22:50
merge trunk file: 7e6ecc7419 check-in: [f1406199a1] user: dgp branch: dgp-properbytearray, size: 313448
12:54
Merge 8.7 file: 3c5588aa9d check-in: [cd89ed2013] user: jan.nijtmans branch: main, size: 313216
2021-04-26
23:06
Fix for io-28.6. file: 7b20139e97 check-in: [c250c25de5] user: pooryorick branch: core-8-branch, size: 316817
14:19
merge trunk file: 891b9499c9 check-in: [73715c59f5] user: dgp branch: dgp-properbytearray, size: 313154
07:58
merge core-8-branch file: 0864a993a7 check-in: [5b3ba7d74a] user: dkf branch: main, size: 312922
2021-04-25
13:58
Documenting our reference count management file: 5901d43de6 check-in: [03ee43f403] user: dkf branch: doc-ref-management, size: 316523
2021-04-12
19:10
More bits and pieces file: fc6697c94e check-in: [0ea6e3ab0e] user: dkf branch: enum-and-inline, size: 315843
2021-03-15
14:01
merge trunk file: 22a869dd4a check-in: [9949dc3d16] user: dgp branch: dgp-properbytearray, size: 313048
12:11
Merge 8.7 (without TIP #575) file: 0f7007a049 check-in: [17e534b3b0] user: jan.nijtmans branch: main, size: 312816
09:52
More refactoring to reduce the choked-up complexity of tclZipfs.c file: cd1ebb5fe4 check-in: [3f78a4d564] user: dkf branch: core-8-branch, size: 316417
2021-01-21
14:05
Merge TIP 481 (resolve conflicts) file: 619026a056 check-in: [61fcaefc06] user: jan.nijtmans branch: dgp-properbytearray, size: 312997
2021-01-15
18:22
Merge pre-TIP 481 commits from trunk file: 29eaeff7bf check-in: [fc566d704e] user: dgp branch: dgp-properbytearray, size: 312979
18:22
Merge pre-TIP 481 commits of 8.7 branch file: 82622c989a check-in: [04bbb5533d] user: dgp branch: tip-568, size: 316367
2021-01-11
10:03
Merge 8.7, resolve conflicts file: 834304453e check-in: [015ff38790] user: jan.nijtmans branch: main, size: 312765
2021-01-08
21:07
Merge 8.7 (resolve conflicts) file: 6851d1d49f check-in: [5295f674c1] user: dgp branch: main, size: 312758
09:37
Omit -Wdeclaration-after-statement from CFLAGS: No longer needed since we stopped support for MSVC 6++ Change Tcl_WideInt -> long long in various places: Tcl_WideInt could be a 128-bit type, we don't want that everywhere. file: a40745ce15 check-in: [174a9adac8] user: jan.nijtmans branch: tip-592, size: 316366
2020-12-10
19:32
merge trunk file: 81ee3f0ae6 check-in: [8f9097afd5] user: dgp branch: dgp-properbytearray, size: 312993
18:58
merge 8.7 file: 4e4734afca check-in: [7067bdaa1c] user: dgp branch: tip-568, size: 316381
2020-12-08
15:42
Merge 8.7 file: 6307c14f91 check-in: [71493b571b] user: jan.nijtmans branch: main, size: 312772
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: f85ff83276 check-in: [4254aa305b] user: jan.nijtmans branch: core-8-branch, size: 316380
2020-10-27
21:45
merge trunk file: dc6a8c0c3e check-in: [3540230c30] user: dgp branch: dgp-properbytearray, size: 312995
21:39
merge 8.7 file: af00a16a1c check-in: [97069a12f6] user: dgp branch: tip-568, size: 316383
2020-10-23
15:48
Merge 8.7 file: 38d53d6e7f check-in: [c4f39eb938] user: jan.nijtmans branch: trunk, size: 312774
15:46
Merge 8.6 file: 238ea8d494 check-in: [20e8b5d93f] user: jan.nijtmans branch: core-8-branch, size: 316382
15:36
Fix warning: /home/jboss/workspace/tcl8.7/generic/tclIO.c:9997:27: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 9997 | RemovePoint(nextPtr)[0] = '\r'; | ^ file: 2e99701e9a check-in: [5102f7316d] user: jan.nijtmans branch: core-8-6-branch, size: 314963
2020-09-18
02:38
merge trunk file: 851e7043d8 check-in: [424840e52f] user: dgp branch: dgp-properbytearray, size: 312995
2020-09-17
17:54
merge 8.7 file: 6451948336 check-in: [fe8535bde0] user: dgp branch: tip-568, size: 316383
14:12
Merge 8.7 file: ff6c25028e check-in: [92d5c95fd8] user: jan.nijtmans branch: trunk, size: 312774
13:48
Eliminate many usages of Tcl_NewObj (-> TclNewObj) and Tcl_NewIntObj (-> TclNewIntObj or Tcl_NewWideIntObj) file: 4eca5659b2 check-in: [ef22eb8ac3] user: jan.nijtmans branch: core-8-branch, size: 316382
2020-09-16
16:18
merge trunk file: 377c96eb1a check-in: [346f441d68] user: dgp branch: dgp-properbytearray, size: 312987
2020-09-15
18:04
merge 8.7 file: 86252d8fbf check-in: [abf149cd4e] user: dgp branch: tip-568, size: 316375
2020-08-12
10:37
Merge 8.7 file: f643821017 check-in: [fee2ffd3d4] user: jan.nijtmans branch: trunk, size: 312766
10:30
Merge 8.6. Better solution for [e87000d842] file: b40a1840ac check-in: [eab09ae8ff] user: jan.nijtmans branch: core-8-branch, size: 316374
10:25
Fix [e87000d8425ab86a]: crash for "fconfigure stdout" in Win32. Even though the crash cannot happen in Tcl 8.6, the function Tcl_BadChannelOption() was to blame, so better fix that in 8.6 too. file: 6948a9b268 check-in: [3d96bfb13f] user: jan.nijtmans branch: core-8-6-branch, size: 314963
2020-08-11
06:08
Merge 8.6 file: 6c316bcd2a check-in: [bf77bc0365] user: jan.nijtmans branch: core-8-branch, size: 316356
05:39
Eliminate many unnecessary type-casts, mostly (size_t) when value is already size_t or int file: 9c17bd3da1 check-in: [013b828787] user: jan.nijtmans branch: core-8-6-branch, size: 314945
2020-06-04
15:15
Merge 8.7. Use more TCL_INDEX_NONE in documentation/headers/code. file: 72a41b1655 check-in: [baad702302] user: jan.nijtmans branch: trunk, size: 312748
2020-05-29
20:00
fixes [75d525d37c]: segfault by server socket transfer (accept proc executed in wrong interpreter); no interp-attach action or callback at the moment, but since accept proc is not sharable between multiple interpreters of same thread, after transfer to another thread we can simply obtain new interp handle from statePtr->interp (set by register interp now) file: d5c97f6328 check-in: [455c680c3a] user: sebres branch: bug-75d525d37c-sf-chan-transfer, size: 315281
2020-04-01
20:36
merge trunk file: 6807563540 check-in: [e4f36b1f72] user: dgp branch: dgp-properbytearray, size: 312973
20:28
merge 8.7 file: 76bb53a9f5 check-in: [acf7d6b91c] user: dgp branch: tip-568, size: 316377
20:20
merge 8.7 file: 303221cc5c check-in: [772d0456c5] user: dgp branch: trunk, size: 312752
20:14
Prevent a binary read appending to a non-bytes value. file: c1ad8588c2 check-in: [c1d4e823bc] user: dgp branch: core-8-branch, size: 316376
12:50
merge trunk file: 2a2f51b656 check-in: [1978f15ef4] user: dgp branch: dgp-properbytearray, size: 312870
12:37
merge 8.7 file: 2e91a331b5 check-in: [15af79ddbc] user: dgp branch: trunk, size: 312649
11:54
merge 8.6 file: 5cad1e470a check-in: [487f1bf7e7] user: dgp branch: core-8-branch, size: 316273
2020-03-31
20:04
fixes [f583715154] - tclUnixSock.c: introduced ThreadActionProc considering a transfer of async-connecting channel between threads; cherry-picked some prevention against invalid thread owner addressed in [815e246806] file: cca891ca15 check-in: [532506ef71] user: sebres branch: bug-f583715154-v2, size: 314974
2020-03-30
21:19
Revise writing to binary channels so that any attempt to write a non-byte character throws an error. file: a760c6a660 check-in: [35a92b96f2] user: dgp branch: dgp-binary-write-error-on-non-byte, size: 315984
20:59
Revise writing to binary channels so that non-byte characters get replaced with a replacement character ("?" for iso8859-1). file: 1f39c843f9 check-in: [a87be9f2dc] user: dgp branch: dgp-binary-write-replace-non-byte, size: 316119
2020-03-25
17:00
Proposed fix for [f583715154]: Fileevent runs in the wrong thread file: b901646e93 check-in: [a51405af6e] user: jan.nijtmans branch: bug-f583715154, size: 314456
2020-03-18
22:28
merge near trunk file: 89bb361108 check-in: [b2420d2b6e] user: dgp branch: dgp-properbytearray, size: 312209
2020-03-17
01:20
merge 8.7 file: 8ef76dad51 check-in: [4d9717c8ef] user: dgp branch: trunk, size: 311988
01:01
TIP 569 - remove lint comments file: 7f29767c65 check-in: [658a498ae4] user: dgp branch: core-8-branch, size: 315612
2020-03-09
16:46
merge trunk file: 28169e01a7 check-in: [7da0ad5679] user: dgp branch: dgp-properbytearray, size: 312273
2020-03-06
21:33
merge 8.7 file: f4a0774612 check-in: [89fde09430] user: dgp branch: trunk, size: 312052
20:57
more file: 40700b31a3 check-in: [cda0377279] user: dgp branch: core-8-branch, size: 315676
2020-03-05
11:56
Merge 8.7 file: ce40936a12 check-in: [4e40161ba1] user: jan.nijtmans branch: trunk, size: 312147
11:48
Merge 8.6 file: b5eefd0db3 check-in: [a4b71b9ca7] user: jan.nijtmans branch: core-8-branch, size: 315771
11:32
Move setting of interpreter error-message from tclUnixSock.c to tclIO.c, since the same should be done for all channel types. (Thanks, Don, for noticing this!) Also, ENOTCONN for a half-close should not be fatal, just a EINVAL, when doing it as part of a full close. See: [65c9cd1534] file: 9c10abff0f check-in: [a685ea6f1f] user: jan.nijtmans branch: core-8-6-branch, size: 314313
2020-03-04
18:26
[65c9cd1534] Restore continuity of compatible function of [close] on a channel type that defines both closeProc and close2Proc. Move to a bug fix branch. Need to build more confidence. file: 624690969f check-in: [75cd9d9d6d] user: dgp branch: bug-65c8cd1534, size: 315663
14:33
Merge 8.7. Remove documentation and typedefs related to old channel types. file: 766adcd1a7 check-in: [d5bc305ad2] user: jan.nijtmans branch: trunk, size: 312206
13:59
Merge 8.6 file: 7e745ae4bf check-in: [6448bcf19b] user: jan.nijtmans branch: core-8-branch, size: 315794
13:42
Implement WideSeekProc() for all channels which have a SeekProc(). Implement Close2Proc() for all channels, as minimal wrapper around CloseProc(). Backported (with comments) and adapted from core-8-branch. file: b79c5b6900 check-in: [3a5bf9c4ee] user: jan.nijtmans branch: core-8-6-branch, size: 314379
2020-02-28
20:11
merge trunk file: 6f27114d74 check-in: [14f4239b9d] user: dgp branch: dgp-properbytearray, size: 312822
14:07
Merge 8.7 file: ad633911c6 check-in: [0d3f9515c0] user: jan.nijtmans branch: trunk, size: 312601
13:13
Implement TIP #562: Deprecate channel types 1-4 file: 83e5b5f4f5 check-in: [74755e2555] user: jan.nijtmans branch: core-8-branch, size: 316059
12:46
Merge 8.7 file: 15841b34b1 check-in: [b7af922d61] user: jan.nijtmans branch: trunk, size: 314525
12:06
Implement TIP #557: C++ support for Tcl file: 0d17098c9f check-in: [c4a27f443c] user: jan.nijtmans branch: core-8-branch, size: 314457
2020-02-26
10:58
Merge 8.7 file: aa2beaf939 check-in: [cfcbd55aba] user: jan.nijtmans branch: cplusplus, size: 314453
2020-02-24
12:19
Merge 8.7 file: 24cd1525c4 check-in: [62e1651518] user: jan.nijtmans branch: trunk, size: 314076
12:18
Merge 8.6 file: 7869a392c5 check-in: [1d3f5159be] user: jan.nijtmans branch: core-8-branch, size: 314004
12:01
Merge 8.5 file: 1fb528f4f6 check-in: [9e3386f9e9] user: jan.nijtmans branch: core-8-6-branch, size: 313624
2020-02-13
22:06
Merge 8.7 file: 0734b3e456 check-in: [c59e305ca6] user: jan.nijtmans branch: cplusplus, size: 314449
2020-02-03
14:30
merge trunk file: 4896dc7f05 check-in: [1d8fb475c4] user: dgp branch: dgp-properbytearray, size: 314293
2020-01-31
14:58
Make Tcl_ChannelCloseProc() deprecated too. Implement close2Proc and wideSeekProc for all internal channel types. file: e02ee63ea6 check-in: [4107df0b30] user: jan.nijtmans branch: deprecate-channel-type-1-4, size: 315602
2020-01-30
16:08
Merge 8.7 file: 88119b53d4 check-in: [566db5a014] user: jan.nijtmans branch: deprecate-channel-type-1-4, size: 315081
13:27
Merge 8.7 file: 5e616a36cc check-in: [904884ed6a] user: jan.nijtmans branch: trunk, size: 314072
13:21
Merge 8.6 file: 97193f9b37 check-in: [0d5cc3c4bb] user: jan.nijtmans branch: core-8-branch, size: 314000
13:04
Simplify the use of HaveVersion() in Channel handling. Nothing functional, only code clean-up. file: 89fd82fc86 check-in: [e9fe70f9d5] user: jan.nijtmans branch: core-8-6-branch, size: 313620
2020-01-29
15:52
Deprecate channel types 1-4 file: bd545a2ef4 check-in: [cf397fef44] user: jan.nijtmans branch: deprecate-channel-type-1-4, size: 315086
2020-01-22
15:28
merge trunk file: 126b29b389 check-in: [d7ec907d9b] user: dgp branch: dgp-properbytearray, size: 315210
2020-01-20
14:19
Merge 8.7 file: f431e75957 check-in: [3d7b2dce60] user: jan.nijtmans branch: trunk, size: 314989
2019-12-16
21:39
merge trunk file: 92da6b6bdc check-in: [e9801db712] user: dgp branch: dgp-properbytearray, size: 315211
2019-12-13
15:39
Merge 8.7 file: c5bb35eadb check-in: [a4ec5ee9ad] user: jan.nijtmans branch: cplusplus, size: 315367
2019-12-12
21:43
Merge 8.7 file: 2c0d406ad5 check-in: [4499400ea4] user: jan.nijtmans branch: trunk, size: 314990
21:38
Little code tweaks, regarding the use of TCL_UTF_MAX or wchar_t. file: d4901d2401 check-in: [35e74efb18] user: jan.nijtmans branch: core-8-branch, size: 314918
2019-11-18
14:40
Some code cleanup. Build with zlib dll on Win32 when using makefile.vc (shared-build only) file: 59043da6e3 check-in: [d83d101308] user: jan.nijtmans branch: utf-max, size: 314917
2019-11-17
13:39
Merge 8.7. Unbreak travis build with TCL_UTF_MAX=3 file: 3d58ed7316 check-in: [ecae4a1bda] user: jan.nijtmans branch: utf-max, size: 314918
2019-11-15
15:19
Merge 8.7 file: dd1356211c check-in: [6013bbbb99] user: jan.nijtmans branch: utf-max, size: 314884
2019-10-07
15:42
merge trunk file: ac67609d96 check-in: [073b98213a] user: dgp branch: dgp-properbytearray, size: 315211
2019-10-06
20:39
Merge 8.7 file: 20c1740c29 check-in: [f5613703c1] user: jan.nijtmans branch: cplusplus, size: 315367
2019-10-05
20:45
Merge 8.7 file: dd6c3820a1 check-in: [84216a99d2] user: jan.nijtmans branch: trunk, size: 314990
20:44
Merge 8.6 file: 5f6fbe36b2 check-in: [e0329f2be8] user: jan.nijtmans branch: core-8-branch, size: 314918
20:43
Change LSTATUS to LONG, since older SDK's don't know it. core.tcl.tk -> core.tcl-lang.org and http -> https file: 74ca754b5a check-in: [4cede117d0] user: jan.nijtmans branch: core-8-6-branch, size: 314537
2019-08-30
15:21
Let's try a real C++ build with Travis on Linux file: dfd531c18b check-in: [5732a73bf5] user: jan.nijtmans branch: cplusplus, size: 315360
2019-08-26
16:34
merge trunk file: c5eaab041a check-in: [0f14c97005] user: dgp branch: dgp-properbytearray, size: 315204
2019-08-15
15:20
Merge tip-548 file: 5360b9d0db check-in: [fb24db99f5] user: jan.nijtmans branch: cplusplus, size: 315314
08:10
Merge 8.7 file: 78dddb4932 check-in: [f33e2933b5] user: jan.nijtmans branch: trunk, size: 314983
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: fe1468e328 check-in: [f074bda87c] user: jan.nijtmans branch: no-register, size: 314911
2019-07-10
05:51
Merge 8.7, and continue implementation. Almost done file: 90a1b00e45 check-in: [237cdadf3f] user: jan.nijtmans branch: cplusplus, size: 315341
2019-05-10
07:46
merge 8.7 file: 91e3fdc8f3 check-in: [f3302db091] user: jan.nijtmans branch: utf-max, size: 314914
2019-05-03
15:58
merge trunk file: 0c05a99746 check-in: [61db2fb4ce] user: dgp branch: dgp-properbytearray, size: 315231
15:35
merge 8.7 file: 3ce67223dc check-in: [4f192d63fb] user: dgp branch: trunk, size: 315010
2019-05-01
10:44
Check for BG_FLUSH_SCHEDULED inside ChannelTimerProc file: 9760769cb1 check-in: [9d5631ebf8] user: pooryorick branch: bug-de232b49f2, size: 314938
06:33
merge bug-de232b49f2 file: b2ba967c67 check-in: [bc1f88d020] user: pooryorick branch: trunk, size: 314972
2019-04-27
07:19
Fix for de232b49f2, write-only nonblocking refchan and Tcl internal buffers. file: bac43ea193 check-in: [d0dd6d19a4] user: pooryorick branch: bug-de232b49f2, size: 314900
2019-04-02
07:53
Merge trunk file: 75c014d4b2 check-in: [277aaa0fb5] user: jan.nijtmans branch: dgp-properbytearray, size: 314442
2019-03-20
22:54
Merge 8.7 file: e6fb41c8cd check-in: [3ea5d3e8a3] user: jan.nijtmans branch: utf-max, size: 314125
2019-03-18
22:17
Merge 8.7 file: 5f32ee4798 check-in: [b9ad5fe740] user: jan.nijtmans branch: trunk, size: 314221
22:14
enlarge a few small buffers, which could overflow using Unicode characters > /UFFFF. Eliminate some end-of-line spacing file: 26e9f9ded0 check-in: [41c373ad8f] user: jan.nijtmans branch: core-8-branch, size: 314149
2019-03-16
21:10
Merge 8.7 Move up some stub entries related to Tcl_UniChar Use TCL_UTF_MAX=4 for full Unicode in stead of TCL_UTF_MAX=6 (TCL_UTF_MAX: 3 is default) file: 1143162d3b check-in: [81502a66ed] user: jan.nijtmans branch: utf-max, size: 314123
2019-03-14
22:47
Merge trunk file: 9fa9effa44 check-in: [419fdde9fc] user: jan.nijtmans branch: dgp-properbytearray, size: 314436
2019-03-13
20:44
Eliminate many (mostly harmless) MSVC warning messages. Tcl 9 compiles warning-free now on MSVC. file: 890c004b8c check-in: [cf865c6e2b] user: jan.nijtmans branch: trunk, size: 314215
2019-03-08
22:51
Merge 8.7 file: e982196185 check-in: [fe02c8898e] user: jan.nijtmans branch: trunk, size: 314147
11:34
3-way merge 8.6 - timerate is part of Tcl now (since TIP#527 got merged), conflicts resolved, merge-points restored, configure rebuilt, etc file: 5c08fdd1fd check-in: [102958b94e] user: sebres branch: sebres-8-6-event-perf-branch, size: 315438
04:05
merge sebres-8-5-timerate (prepare for consolidation with 8.5) file: 1c7ea28bd4 check-in: [ca89c4e5a7] user: sebres branch: sebres-8-5-event-perf-branch, size: 296984
2019-02-26
19:37
More use of (efficient) TclHasIntRep() macro. Also eliminate many (size_t) and (unsigned) type-casts, which don't make sense any more. file: 15085093d2 check-in: [2c7db3fa01] user: jan.nijtmans branch: mistake, size: 314143
2019-02-22
20:23
WIP file: d6ec5fe910 check-in: [15fabd01bb] user: dgp branch: dgp-properbytearray, size: 314360
20:12
WIP file: 30f995c76c check-in: [567ea96577] user: dgp branch: dgp-properbytearray, size: 314478
16:45
Merge and resolve more from the trunk. file: f89340694a check-in: [11271c0a32] user: dgp branch: dgp-properbytearray, size: 314428
2019-02-14
20:31
Merge trunk through 2019-01-25 file: 663d8ebcb4 check-in: [147905ffeb] user: dgp branch: dgp-properbytearray, size: 314429
2019-02-04
22:45
Merge trunk file: a63b45954f check-in: [a6db8815ce] user: jan.nijtmans branch: tip-502-for-9, size: 314139
2019-02-01
20:36
Another (big) round of int -> size_t enhancements. So Tcl can handle string >2GiB in more places. file: 93dfe2d816 check-in: [8534448b44] user: jan.nijtmans branch: trunk, size: 314257
2019-01-28
21:47
Merge 8.7 file: 1790ebb48e check-in: [08dd3497f1] user: jan.nijtmans branch: trunk, size: 314207
21:34
New internal macro TclFetchIntRep, which is faster than Tcl_FetchIntRep. But ... don't use this function when the result is only compared to NULL: that's just overkill. file: 187c0b26f0 check-in: [d3ed67412e] user: jan.nijtmans branch: core-8-branch, size: 314215
2019-01-24
20:10
Another round of int -> size_t modifications, so strings > 2Gb are handled correctly on 64-bit platforms. file: f3e3275286 check-in: [0c0ff65606] user: jan.nijtmans branch: trunk, size: 314208
2018-11-19
18:24
merge trunk file: aedb204d36 check-in: [f99141a5ea] user: dgp branch: dgp-properbytearray, size: 314403
2018-11-18
10:29
Now that we have TCL_AUTO_LENGTH/TCL_IO_FAILURE macro's, use them to make code and documentation more readable. Shifted to feature branch as a temporary measure since it doesn't build. file: fc5939f020 check-in: [d828309515] user: jan.nijtmans branch: jn-use-macros, size: 314182
2018-11-06
12:59
merge core-8-branch file: 1133a79bcc check-in: [445db2cb18] user: dkf branch: mistake, size: 314153
2018-10-24
00:06
merge trunk file: 579e98540b check-in: [b2e2314ae8] user: dgp branch: dgp-properbytearray, size: 314068
2018-10-18
15:31
merge 8.7 file: 55642c4551 check-in: [000ee6e038] user: dgp branch: tip-445, size: 314216
2018-10-17
19:49
merge 8.7 file: 69ede45be4 check-in: [30d5e6a673] user: dgp branch: tip-469, size: 313958
2018-10-06
19:20
Use more TCL_AUTO_LENGTH, when appropriate file: 77d82a893c check-in: [c643e8fe38] user: jan.nijtmans branch: memory-API, size: 313847
2018-09-13
20:52
merge trunk file: 0e215115a7 check-in: [8e81b9d9b8] user: jan.nijtmans branch: memory-API, size: 313813
20:52
merge 8.7 file: ac9198a1a5 check-in: [0caf13a0cf] user: jan.nijtmans branch: trunk, size: 313463
20:33
Eliminate the use of macro's like LLONG_MAX|MIN, since they assume that Tcl_WideInt equals "long long". Also eliminate uses of Tcl_WideAsLong() and friends, as - often - simple type cases make things more clear. file: dc3c030c19 check-in: [f89b8af179] user: jan.nijtmans branch: core-8-branch, size: 313910
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: a6da3d3b3f check-in: [f13660b5a5] user: jan.nijtmans branch: memory-API, size: 314101
2018-07-10
19:18
Remove 4 unneeded compatibility macro's, because those functions never return -1 anyway. Change documentation to use void * in stead of ClientData file: 4b4f4a7243 check-in: [701b0014c7] user: jan.nijtmans branch: memory-API, size: 314027
2018-07-06
21:36
remaining external API. Looks like complete now. Milestone! Still more testing needed file: a0eef227c1 check-in: [f8de6ab8da] user: jan.nijtmans branch: memory-API, size: 314020
19:53
more progress file: f6f7339fbb check-in: [34f111f433] user: jan.nijtmans branch: memory-API, size: 313913
2018-07-01
06:21
Starting to update all callers of TclGetStringFromObj() to use size_t variables file: 503fa97b10 check-in: [97c2217f81] user: jan.nijtmans branch: memory-API, size: 313889
2018-06-29
18:13
Improve many parsing-related functions to use size_t file: 6135c0b74f check-in: [2d7687959e] user: jan.nijtmans branch: memory-API, size: 313883
2018-06-28
21:42
More API changes using size_t. Internal changes not complete yet (WIP) file: 22ac7dd4a8 check-in: [1bfecd9172] user: jan.nijtmans branch: memory-API, size: 313919
2018-06-12
11:28
merge amend from 8.5th fix file: 407e8fa6bf check-in: [f5a01b5f42] user: sebres branch: fix-815e246806-8-6, size: 316588
11:23
atomic Incr/Decr with Fetch renamed (a bit more clear now, because first increments then fetch), provide little documentation for atomic functions; extended with possibility to switch to non-atomic functions (currently TCL_THREADS-related). file: 838eda0a04 check-in: [52ddcca8d5] user: sebres branch: fix-815e246806-8-5, size: 298017
2018-06-11
12:57
amend after merge (lossed by conflict-resolve) file: 303766db03 check-in: [8ac4d64f41] user: sebres branch: fix-815e246806-8-5, size: 298015
12:51
back-port 8.6th fix file: 071721dc2c check-in: [35b3eadf7f] user: sebres branch: fix-815e246806-8-5, size: 297969
11:11
fixed [815e246806] for 8.6th case if channel switches owner in fileevent via thread::transfer and thread::detach/attach (sync/async technique) file: e95bd4af99 check-in: [922ee82dde] user: sebres branch: fix-815e246806-8-6, size: 316586
2018-06-08
22:34
**interim commit** fixed for 8.6th case if channel switches owner via thread::transfer file: f30244620c check-in: [2e7300065a] user: sebres branch: fix-815e246806-8-6, size: 316012
19:02
merge atomic fix from fix-815e246806-8-5 file: 1629731e4b check-in: [1d2c1768c9] user: sebres branch: fix-815e246806-8-6, size: 314968
18:59
Fixes bug [815e246806] using atomic reference counter (atomic incr/decr during channel transfer process). Introduces TclAtomicInt buildin primitives (for atomic fetch operations), currently gcc, clang (excepting older versions) and windows. file: cc018927a0 check-in: [bd0fca47e3] user: sebres branch: fix-815e246806-8-5, size: 296439
13:33
merge fix for [815e246806] from 8.5th branch fix-815e246806-8-5 file: bc420aa5b2 check-in: [f44a1ddd60] user: sebres branch: fix-815e246806-8-6, size: 314932
13:28
fixes [815e246806], extend Tcl_RegisterChannel/Tcl_UnregisterChannel with preserving of ref-count of the channel also to avoid unexpected removal of channel during the transfer-process between threads (could temporary share the channel in two threads, especially if initiated from event-handler like TclChannelEventScriptInvoker). file: 6bf795e319 check-in: [dafa1a0859] user: sebres branch: fix-815e246806-8-5, size: 296403
2018-03-15
14:14
merge 8.7 file: fe8482b724 check-in: [15b92d9602] user: dgp branch: tip-469, size: 314246
2018-03-06
13:56
merge trunk file: 37e3df0238 check-in: [ca5a9a7e17] user: dgp branch: dgp-properbytearray, size: 313972
13:45
merge 8.7 file: 9a2bc37d2e check-in: [068966277d] user: dgp branch: tip-445, size: 314504
13:21
merge 8.7 file: 37e95d8f0f check-in: [fd73024fcf] user: dgp branch: trunk, size: 313751
12:59
merge 8.6 file: 2b280cb254 check-in: [3d06c4a172] user: dgp branch: core-8-branch, size: 314198
2018-03-05
17:43
merge core-8-5-branch (fixes [1873ea0ee4f01b26]: wrong initialization of std-channels ...) file: 60b1ee2505 check-in: [6b38bf6d66] user: sebres branch: core-8-6-branch, size: 314530
17:37
fixes [1873ea0ee4f01b26]: wrong initialization of std-channels, if no std-handles available at all (e. g. non-console application, like "tk") file: 9dbcc6af5e check-in: [041bc74867] user: sebres branch: core-8-5-branch, size: 296001
2018-02-04
15:52
fileevent $ch exception ... file: 1f17cc0d76 check-in: [3d3173c16b] user: avl42 branch: tip-469, size: 314088
2017-11-29
15:37
merge trunk file: e7c44b72a8 check-in: [24b9855f92] user: dgp branch: dgp-properbytearray, size: 313814
14:54
merge 8.7 file: a3f3178d5b check-in: [8944ae4374] user: dgp branch: tip-445, size: 314346
2017-11-20
12:13
Remove TclCopyChannelOld() function. Should have been part of [b03c4194f001be0b|this] earlier commit. file: d76feb90a3 check-in: [f79d84d06c] user: jan.nijtmans branch: trunk, size: 313593
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: d83afab045 check-in: [4a603a5f7d] user: jan.nijtmans branch: core-8-branch, size: 314040
2017-11-08
14:30
Rebase to trunk. file: b0f503448e check-in: [a12771a1b9] user: dgp branch: dgp-properbytearray, size: 314222
2017-10-27
15:35
merge novem file: 785cb0ee80 check-in: [f646928626] user: dgp branch: dgp-properbytearray, size: 313836
13:12
merge trunk file: 978698c0d9 check-in: [58759b9397] user: dgp branch: tip-445, size: 314307
2017-10-23
17:12
Update TZ info to tzcode2017c. file: 86d940ae24 check-in: [822e31b89d] user: jima branch: novem, size: 313615
12:10
merge core-8-6-branch file: dcd06848e5 check-in: [91967bbc3f] user: jan.nijtmans branch: trunk, size: 314001
12:09
Fix [b58e6897034fc5292c9d36ba8099d9a835c98172|b58e689703]: Return value of 'Tcl_Flush' file: 9ef7957ec4 check-in: [f7b55d3100] user: jan.nijtmans branch: core-8-6-branch, size: 314372
2017-07-16
20:55
fileevent $ch exception ... file: bfa9c06150 check-in: [5610dcf5cd] user: avl branch: tcl-469-1st-try, size: 314042
2017-07-10
11:12
merge sebres-8-5-event-perf-branch file: 756ab3386d check-in: [2219c00d2a] user: sebres branch: sebres-8-6-event-perf-branch, size: 315273
10:56
reintegrate sebres-8-6-event-perf-branch back to 8.5 file: dcbee039ab check-in: [d97f93c3f3] user: sebres branch: sebres-8-5-event-perf-branch, size: 296826
08:55
Stability fix: queue epoch to guarantee avoid broken queue, service level to avoid reset block time by nested event-cycles (if Tcl_SetTimer does not create it), etc. Fixed retarded events (using new retarded list, the involve of the retarded events occurs only after checking of all event sources now). Two opportunities to retard event: - lazy, using the same event-object: in the handler set event->proc to new (or the same) handler (fast, possible only if not entering new event-cycle in handler); - create the event with new position "TCL_QUEUE_RETARDED"; New inline functions TclpQueueEventClientData / TclpQueueEventEx to fast creating resp. queuing event with extra data. file: 9d12eeed6e check-in: [68698a3ac4] user: sebres branch: sebres-8-6-event-perf-branch, size: 315277
08:53
merge resp. reintegrate sebres-8-5-event-perf-branch to 8.6 file: 93826ccf88 check-in: [fed961497a] user: sebres branch: sebres-8-6-event-perf-branch, size: 315190
2017-07-03
13:31
don't cancel scheduled event as long as the event list is not bidirectional (too slow by large queue) - rewritten to cancel delayed (by execute it). file: 6e16697f77 check-in: [25de7fd7a9] user: sebres branch: sebres-8-5-event-perf-branch, size: 296743
13:31
fixed timer-marker handling: timer should be always executed after queued event (of the same generation), it was marked (be sure it marked to immediate execution in corresponding checkProc only). tclIO: scheduled event rewritten using Tcl_Event instead of timer event (IO is not timer, e. g. executed also by usage of `vwait -notimer ...`, etc). file: 5635a100d7 check-in: [470ed5221b] user: sebres branch: sebres-8-5-event-perf-branch, size: 296509
13:31
interim commit: trying to pass test-cases - timer-3.*, chan-io-29.34, socket-2.12 (busy prompt timer, unexpected too early timer event, wrong timer-marker usage) file: 831b633c2c check-in: [d49f6f0a55] user: sebres branch: sebres-8-5-event-perf-branch, size: 296994
13:30
code review, rewrite tclTimer, prolongation, etc. file: 3b3eefd34e check-in: [449d30a964] user: sebres branch: sebres-8-5-event-perf-branch, size: 296979
13:30
interim commit: code review, rewrite tclTimer, etc. file: 4a7eba9c36 check-in: [6828f2cd17] user: sebres branch: sebres-8-5-event-perf-branch, size: 296933
2017-06-05
18:33
Change the return type of Tcl_RegisterChannel from void to Tcl_Channel and have Tcl_RegisterChannel return the channel. his is a convenience to the programmer. file: 7610674287 check-in: [9d18c14038] user: stu branch: stwo-dev86, size: 314031
2017-04-12
13:36
merge trunk file: 79b9704952 check-in: [36507326e3] user: dgp branch: tip-445, size: 314300
2017-04-11
15:20
Remove some unnecessary "struct" definitions and some type casts no longer necessary. No functional changes. file: 992722ab43 check-in: [1f5acc492f] user: jan.nijtmans branch: trunk, size: 313994
14:47
merge novem file: 7c98768b0f check-in: [c71f16742c] user: dgp branch: dgp-properbytearray, size: 313829
14:14
merge trunk file: 842436ffe0 check-in: [27c5038e96] user: dgp branch: tip-445, size: 314319
10:04
merge trunk file: b3651c2316 check-in: [9aa06eddb4] user: jan.nijtmans branch: novem, size: 313608
2017-04-10
16:21
More minor style fixes. file: c9e482594a check-in: [4809613b1b] user: dkf branch: trunk, size: 314013
2017-03-29
14:35
merge trunk file: 8c68faaaab check-in: [5154e628d8] user: dgp branch: tip-445, size: 313594
14:28
merge novem file: 0c54a466fe check-in: [3ce58b40ba] user: dgp branch: dgp-properbytearray, size: 313103
12:20
Merge trunk file: ae6c70129c check-in: [eca85b8e37] user: jan.nijtmans branch: novem, size: 312882
12:16
In comments and documentation, distinguish between __int64 (a Microsoft 64-bit integer type) and int64_t (C99 equivalent) file: c92eef4bab check-in: [88e580fec1] user: jan.nijtmans branch: core-8-6-branch, size: 314365
12:05
(more experimenting): Make TCL_LL_MODIFIER behave more close to intuitive expectations: If the platform has a "long long" type, use it for Tcl_WideInt, so TCL_LL_MODIFIER is really a replacement for "ll" on most platforms (Win32/Win64 as most notable exception). Will need a new TIP. file: 1c9ce630a4 check-in: [c2eca96850] user: jan.nijtmans branch: z_modifier, size: 313288
2017-02-16
15:51
merge trunk file: c6234d539e check-in: [b77b0b9348] user: dgp branch: tip-445, size: 313592
2017-02-15
14:04
More internal use of size_t in stead of int, e.g. for epoch's file: 9bbe29df5e check-in: [ff3f6a12a8] user: jan.nijtmans branch: trunk, size: 313286
2017-01-27
16:32
merge trunk file: 7a6eb5bc45 check-in: [50c9784c6a] user: dgp branch: tip-445, size: 313589
2017-01-25
12:22
If TCL_NO_DEPRECATED is defined, remove the "case" statement, and use much less interp->result. Implementation mostly taken over from "novem". If TCL_NO_DEPRECATED is not defined, nothing changes. file: cda735b5e9 check-in: [3fe8ec5fd6] user: jan.nijtmans branch: trunk, size: 313283
2017-01-12
20:59
merge trunk file: 7d76f4b42c check-in: [23f740a281] user: dgp branch: tip-445, size: 314676
2017-01-03
16:48
merge novem file: 9e63572cd6 check-in: [ddc40d9c59] user: dgp branch: dgp-properbytearray, size: 313101
2016-12-23
15:49
merge trunk file: c8f6e827aa check-in: [c56a03aae7] user: jan.nijtmans branch: novem, size: 312880
15:43
Update -DMSTATS functionality, for possible total memory sizes > 2Gb. One more place where use of size_t can increase range. file: 60f6be3ecb check-in: [31fbc1f55a] user: jan.nijtmans branch: trunk, size: 314370
2016-12-13
18:29
Update Tcl_SetByteArrayLength() and callers. file: 0a75f0f378 check-in: [522ab5524f] user: dgp branch: dgp-properbytearray, size: 313094
2016-12-07
19:52
Put explicit byte-narrowing in the write pipeline of -encoding binary channels. This makes tests pass again. I don't much like it. It makes "-encoding binary" something different from "-encoding iso8859-1 -eofchar {} -translation lf" without a known good reason. Seems it would fit in better with other encodings if chars outside the supported set transformed in "?" instead. file: d402a05747 check-in: [236f5e4f11] user: dgp branch: dgp-properbytearray, size: 313040
2016-12-02
19:01
merge trunk file: a3d7293d7b check-in: [33041ae916] user: dgp branch: tip-445, size: 314669
2016-12-01
11:42
compatability -> compatibility file: 8d9fa9c9df check-in: [602e06e9d3] user: jan.nijtmans branch: core-8-6-branch, size: 314363
11:39
compatability -> compatibility file: d323b043c8 check-in: [9cf8d87904] user: jan.nijtmans branch: core-8-5-branch, size: 295843
2016-11-29
12:26
merge trunk file: f6300df60a check-in: [0a73f68e8e] user: jan.nijtmans branch: novem, size: 312873
2016-11-25
12:58
merge trunk file: 129f68b9b3 check-in: [742389b703] user: jan.nijtmans branch: novem, size: 312871
2016-07-18
21:53
Second half "chan" Tcl_ObjType conversion. Mistake avoided this time. file: d148726ef8 check-in: [d672e6e584] user: dgp branch: tip-445, size: 314669
20:59
Half convert "chan" Tcl_ObjType to new interfaces. file: 2f1516c0aa check-in: [bb39d672f9] user: dgp branch: tip-445, size: 314549
20:08
Convert "chan" Tcl_ObjType to new interfaces. file: 28de50d7b4 check-in: [f5b0b1985d] user: dgp branch: mistake, size: 314656
17:15
merge trunk file: d4b7abc27f check-in: [c58aa1576a] user: dgp branch: novem, size: 312879
16:46
[104f2885bb] Rework the "chan" Tcl_ObjType to properly validate cached channel name lookups. file: af648152fc check-in: [fb17469c50] user: dgp branch: core-8-6-branch, size: 314363
16:26
[104f2885bb] Rework the "chan" Tcl_ObjType to properly validate cached channel name lookups. file: ec2c98d12a check-in: [05d912fea5] user: dgp branch: core-8-5-branch, size: 295843
2016-04-20
16:44
Merge 8.6.5 file: f9aa7c115d check-in: [090329ea25] user: dgp branch: little, size: 316995
2016-04-19
20:35
Fork of Tcl used in the "Little" project. http://www.mcvoy.com/lm/little/index.html file: 59e988a423 check-in: [69b737f5a1] user: dgp branch: little, size: 316997
2015-11-24
09:19
Merge trunk. Use "tcl9" in stead of "tcl8" in various Makefiles, which (finally) allows to remove the hack in tm.tcl introduced in [387d3899e088f9e4] file: af9ddf9229 check-in: [577ce89a59] user: jan.nijtmans branch: novem, size: 313486
2015-11-10
16:34
[261a8a79f0] Integer overflow leads to segfault. file: ec741875e9 check-in: [a03fee273c] user: dgp branch: trunk, size: 314970
16:31
[261a8a79f0] Integer overflow leads to segfault. file: 7381b7ef93 check-in: [8303249388] user: dgp branch: core-8-5-branch, size: 296406
2015-09-25
17:12
merge trunk file: 4f0eef0c7f check-in: [e2fac8a6f7] user: jan.nijtmans branch: novem, size: 313488
16:43
Backout failed attempt to fix [32ae34e63a]. file: b3f8152197 check-in: [33902c18c2] user: dgp branch: trunk, size: 314972
2015-09-23
17:15
[e0a7b3e5f8] Add missing UpdateInterest call in DoRead(). file: 3e22b688ad check-in: [59229a9240] user: dgp branch: trunk, size: 315829
16:58
[32ae34e63a] Prevent segfaults and data corruption when CopyData() is called recursively. Mark new test io-53.20 as "knownBug". It demos some unknown flaw in MoveBytes(). file: 1d9a38c7e8 check-in: [7ecd0b8c8d] user: dgp branch: trunk, size: 315563
16:37
merge 8.5 file: a759444d05 check-in: [19bcc9ef79] user: dgp branch: bug-e0a7b3e5f8, size: 297265
16:00
Protect CopyState buffer from conflicting uses when CopyData() is called recursively. Also, have ReflectWatch() always give driver a chance to act. file: cf481c2463 check-in: [84f5187671] user: dgp branch: bug-32ae34e63a, size: 296999
13:18
CopyData() now tolerates recursion enough so that io-53.18 does not segfault. file: 72a868d22d check-in: [b932f3d39b] user: dgp branch: bug-32ae34e63a, size: 296820
09:40
WIP file: 83141e996a check-in: [6b6709c021] user: dgp branch: bug-32ae34e63a, size: 297401
2015-08-10
19:44
Add the critical missing UpdateInterest() call at the exit of DoRead(). (Compare with same approach in DoReadChars()). This involves removing some other calls that are now replaced by the new one. Also marked several UpdateInterest() calls throughout tclIO.c with comments raising the suspicion that they serve no function. file: ee4176f7de check-in: [3993dcc988] user: dgp branch: bug-e0a7b3e5f8, size: 296408
2015-07-29
14:56
merge trunk file: a945205ef9 check-in: [2fe99beec9] user: dgp branch: novem, size: 313222
2015-07-15
17:20
[b1534b438b] Prevent read outside buffer boundaries. file: d8476c0741 check-in: [0915121be2] user: dgp branch: trunk, size: 314706
17:17
[b1534b438b] Prevent read outside buffer boundaries. file: 6788f70d44 check-in: [03885f127a] user: dgp branch: core-8-5-branch, size: 296142
2015-07-02
13:17
merge trunk file: e494c50da4 check-in: [cfb40a9761] user: jan.nijtmans branch: novem, size: 312666
12:29
Revert some refcount changes on I/O structs. These are refcounts on structs, not Tcl_Obj's. Their scheme doesn't suffer the same difficulties and histories as Tcl_Obj's, and they need not copy every detail, appropriate or not, from Tcl_Obj refcount management. The "significant value" -- as dkf puts it -- for the struct refcounting scheme is 0 not 1. file: 3638d22d48 check-in: [77039e15ef] user: dgp branch: trunk, size: 314150
08:42
merge trunk file: bd1bb34b98 check-in: [4c0b0070c3] user: jan.nijtmans branch: novem, size: 312674
08:17
Another round of refCount consistancy improvements. file: 325bfc92c4 check-in: [ec91b85b61] user: jan.nijtmans branch: trunk, size: 314158
2015-06-18
19:58
merge novem file: c7ee8d3c99 check-in: [8d9650ab81] user: jan.nijtmans branch: novem-more-memory-API, size: 312711
2015-04-29
21:51
merge trunk file: 0695d299d9 check-in: [c80897363f] user: jan.nijtmans branch: novem, size: 312703
18:16
[894da183c8] Test and fix for regression in flushing blocked channels. file: 39a847ed3c check-in: [98d7d3d724] user: dgp branch: trunk, size: 314240
18:00
[894da183c8] Test and fix for regression in flushing blocked channels. file: 1eb76061fc check-in: [a13963e6e4] user: dgp branch: core-8-5-branch, size: 295586
16:34
[894da183c8] Fix and test for bug at the point it was introduced. file: 91110a00bf check-in: [8eb3c44932] user: dgp branch: bug-894da183c8, size: 288587
2015-04-24
20:17
[879a0747be] Repair handling of incomplete multi-byte chars at the ends of input buffers. Also properly reset input encoding flags when cycling through a fleeting EOF condition. file: fab1a8f708 check-in: [fa817d16c8] user: dgp branch: trunk, size: 314067
20:06
[879a0747be] Repair handling of incomplete multi-byte chars at the ends of input buffers. Also properly reset input encoding flags when cycling through a fleeting EOF condition. file: 42e03de185 check-in: [4b964e7afb] user: dgp branch: core-8-5-branch, size: 295413
2015-04-21
18:23
Proposed fix for bug 879a0747be file: d88b57ad46 check-in: [606edab7e3] user: dgp branch: bug-879a0747be, size: 293445
2015-02-26
16:35
merge trunk file: a13c34353d check-in: [f28efa3202] user: dgp branch: novem, size: 310564
2015-02-19
22:01
per ticket [e08c2c407b053bbfaab] (and stray code related to [84f208762f172e]) adj code to passing test suite file: ed46491514 check-in: [e8e453a016] user: bch branch: trunk, size: 312101
2015-02-12
17:08
Merge trunk and tzdata2015a from ietf.org file: 556169c622 check-in: [7e2416a5da] user: venkat branch: novem, size: 309772
2015-02-11
15:56
Even clearer failure messages. file: cb2a337135 check-in: [d82fc0ac6e] user: dkf branch: tclchan_assertions, size: 312225
2015-02-08
05:04
inputProc and outputProc tests run conditionally on TCL_READABLE, TCL_WRITABLE mask file: a108f3812f check-in: [29f5697dfd] user: bch branch: tclchan_assertions, size: 311948
2015-02-07
21:19
switch raw assert() to Tcl_Panic() per discussion w/ dkf file: 3edb59d123 check-in: [4c53df3107] user: bch branch: tclchan_assertions, size: 311893
21:12
merge [trunk] file: ec127983fd check-in: [e64fd539ad] user: bch branch: tclchan_assertions, size: 311639
2015-02-05
19:23
Backport of channel mem leak fix that got missed before. file: b12089b578 check-in: [9682f2723c] user: dgp branch: core-8-5-branch, size: 293445
2015-01-29
18:39
Fix [08872796bc] file: f96bf3ed27 check-in: [938d402c18] user: dgp branch: trunk, size: 311309
2015-01-26
21:00
merge trunk file: 400ff787c7 check-in: [8fdd17d1b2] user: jan.nijtmans branch: novem, size: 309755
2015-01-21
00:21
truncateProc *can* be NULL file: ab7e573e99 check-in: [4f581ec708] user: bch branch: tclchan_assertions, size: 311622
2015-01-20
23:40
assert() on missing definitions for Tcl_ChannelCreate() required struct Tcl_ChannelType{} fields. file: 2562ee318f check-in: [03386a8409] user: bch branch: tclchan_assertions, size: 311663
2015-01-02
22:42
Now that we're using TCL_ENCODING_NO_TERMINATE - be careful about acting on the contents of dst -- they could be leftovers. Only check bytes reported to have been written and take care to get the assertions right. file: adbc656608 check-in: [bd7e81c0fb] user: dgp branch: trunk, size: 311292
2014-12-23
18:44
merge trunk file: 15c7aa7809 check-in: [526ce54517] user: dgp branch: novem, size: 309763
16:57
Use the new TCL_ENCODING_CHAR_LIMIT flag to have the encoding system manage the max chars to read constraint. file: eab4d1aba5 check-in: [8890be077c] user: dgp branch: dgp-encoding-flags, size: 311300
15:19
merge trunk file: 1a166d9c6e check-in: [ce8eb2a4dd] user: dgp branch: novem, size: 309506
03:11
merge trunk file: fdc7c60a95 check-in: [b057d4a0fb] user: dgp branch: dgp-encoding-flags, size: 311135
2014-12-18
18:06
[7c187a3773] Fix error in managing inStatePtr->inQueueTail value in the byte-moving optimized path of [chan copy]. Thanks to Benno. file: 71e90e87e8 check-in: [fca565edf9] user: dgp branch: trunk, size: 311043
2014-11-15
21:13
With no padding needed for a terminating NUL, there no need for a distinction between the dstNeeded and dstLimit values. file: 1b54cb52c8 check-in: [08d5c4e676] user: dgp branch: dgp-encoding-flags, size: 311051
21:08
Tcl_ExternalToUtf appends a terminating NUL to its encoded results. Perhaps this is a welcome convenience for some callers, but not for Tcl's I/O system, which has no need for that. Added a new flag value TCL_ENCODING_NO_TERMINATE that callers can use to suppress this behavior. This means buffers don't require so much padding, and a tiny bit of processing is saved. Update I/O callers to use the feature. file: 144794b6e1 check-in: [dfbd1c41a7] user: dgp branch: dgp-encoding-flags, size: 311090
2014-11-12
04:44
merge trunk file: 1e5111b149 check-in: [c0fa0060a5] user: dgp branch: novem, size: 309422
2014-11-11
22:23
Likely fix for channel mem leaks. file: deb2c62f85 check-in: [450a131ee7] user: dgp branch: core-8-6-3-rc, size: 310959
2014-11-06
16:56
merge trunk file: 7719b48a1c check-in: [d5dbec3ae3] user: dgp branch: novem, size: 309239
2014-11-03
21:04
Same patch re-enabling read after EOF, but here applied to 8.6. Likely additional changes needed in the other channel transforms new in 8.6. file: e0dd789848 check-in: [e9b791012a] user: dgp branch: bug-5adc350683-86, size: 310776
20:39
[5adc350683] Reworked the management of the EOF states to re-enable the ability to read beyond EOF. Plenty of assert()s to keep thing from going off track again. file: 7f19c63d20 check-in: [77bf4ea593] user: dgp branch: bug-5adc350683, size: 293254
2014-11-01
14:52
Disable assertion until tls bug it detects is fixed. file: 037681b82b check-in: [bd7e5a4c20] user: dgp branch: trunk, size: 305638
2014-10-28
20:10
Work in progress restoring ability to [read] after [eof] and get non-empty strings back in those cases where the channel has them to offer. Also working through all the implications of this possibility on Tcl's more exotic channel features, like stacking. file: 2c1c9c3a0d check-in: [442bff14d8] user: dgp branch: bug-5adc350683, size: 290084
2014-10-18
22:49
merge trunk: file: 0f525fdb1b check-in: [7abadb418f] user: dgp branch: novem, size: 303807
20:03
[10dc6daa37] New fix for [gets] on non-blocking channel. This time properly accounts for the effects of ENCODING_LINESIZE. file: 9a6c9cbb71 check-in: [58e5b26f2a] user: dgp branch: trunk, size: 305344
19:50
[10dc6daa37] New fix for [gets] on non-blocking channel. This time properly accounts for the effects of ENCODING_LINESIZE. file: cf081228b0 check-in: [dfb79fa482] user: dgp branch: core-8-5-branch, size: 288117
2014-10-17
20:38
merge 8.5 file: 210918292e check-in: [22595d7149] user: dgp branch: experiment, size: 305308
20:37
Revert the Tcl_GetsObj portion of the last commit. Although it fixed the bug demonstrated by the test io-33.12, it caused new breakage in [gets] not yet understood. Test io-33.12 left in place to prompt further work. file: ac546f7dd6 check-in: [9c6f8da9dc] user: dgp branch: experiment, size: 288081
15:30
[10dc6daa37] [gets] on a non-blocking channel must take care so that 1) At least one call to the channel driver input proc gets made. Failure to do this locks up the channel - catastrophic FAIL. 2) After any driver call reports BLOCKED, don't call again. This is less serious, but FAILs to respect the non-blocking setting. Code corrections and tests included, to restore 8.6.1 compat. file: 4fac4806d3 check-in: [1271c3edfe] user: dgp branch: experiment, size: 305478
15:20
[10dc6daa37] [gets] on a non-blocking channel must take care so that 1) At least one call to the channel driver input proc gets made. Failure to do this locks up the channel - catastrophic FAIL. 2) After any driver call reports BLOCKED, don't call again. This is less serious, but FAILs to respect the non-blocking setting. Code corrections and tests included, to restore 8.5.15 compat. file: 898204e747 check-in: [87fc2707a0] user: dgp branch: experiment, size: 288251
2014-10-10
20:03
merge trunk file: 9c221fa1f2 check-in: [40b2999ded] user: dgp branch: novem, size: 303729
19:56
[bf7135428c] Restore the Tcl_Write() return value logic. file: 55f5eaf56d check-in: [2e1556fb0e] user: dgp branch: trunk, size: 305266
19:54
[bf7135428c] Restore the Tcl_Write() return value logic. file: e6fde87214 check-in: [9e301d16f7] user: dgp branch: core-8-5-branch, size: 288039
19:44
[ed29c4da21] Completed fix for [chan copy] handling [chan blocked]. file: 574a08307b check-in: [b71be3e49e] user: dgp branch: trunk, size: 305226
18:28
[ed29c4da21] Merge patch from 8.5, still not a complete fix. file: 1b6696da06 check-in: [009cbc8def] user: dgp branch: trunk, size: 305064
18:24
[ed29c4da21] Don't let BLOCKED state get converted into a channel error. file: cd4af57422 check-in: [a0b44a3c1d] user: dgp branch: core-8-5-branch, size: 287999
2014-10-02
14:51
merge trunk file: 82795a8b5b check-in: [a20825f456] user: dgp branch: novem, size: 303171
14:46
[bc5b790099] Improper calculation of new dstLimit value. New test io-12.7. file: 6cfb21a5a5 check-in: [32edfe9722] user: dgp branch: trunk, size: 304708
14:43
[bc5b790099] Improper calculation of new dstLimit value. New test io-12.7. file: 35dd5d4c51 check-in: [df382f0bf1] user: dgp branch: core-8-5-branch, size: 287643
2014-09-17
13:16
merge trunk file: d70b0dba9c check-in: [e483b90ad3] user: jan.nijtmans branch: novem, size: 303190
2014-09-05
18:30
Make corrections to long-false comments. file: 3475249611 check-in: [2558fa2094] user: dgp branch: trunk, size: 304727
2014-09-04
22:05
Remove ChannelHandlerEvent struct, which has never been used in all of recorded Tcl history. Still need to purge comments of mentions of ChannelHandlerEventProc() which is similarly pre-historic. file: af682f7f50 check-in: [e2338e8828] user: dgp branch: trunk, size: 304760
2014-08-24
17:50
merge trunk file: 587973a8db check-in: [83d073e6c1] user: dgp branch: novem, size: 303589
2014-08-22
13:48
merge 8.5; fix notifier mask bug and Tcl_Read performance regression file: 553c10175c check-in: [8cf00e79f5] user: dgp branch: trunk, size: 305126
13:20
Same results; simpler logic. file: 4aed59cabf check-in: [5180649ac5] user: dgp branch: dgp-slow-read, size: 287662
2014-08-21
23:07
Test fix for likely cause of reported I/O slowdown. In a DoRead() revision, it came to favor making every effort to fill buffers, in preference to a more sensible goal of favoring avoiding calls out to the driver if there's already enough data in the buffers to satisfy the read operation. Result is many more calls out to recv() than are a good idea. Ought to show up most glaringly when many Tcl_Read() calls asking for small numbers of bytes (compared to buffer size) each, and that matches the reported case. file: 39ff85c938 check-in: [85cd086fd2] user: dgp branch: dgp-slow-read, size: 287909
04:13
Make simplificiations possible when we know just bytes are getting copied without complications of encodings file: 51fd0e6c55 check-in: [eb68cdfbc1] user: dgp branch: dgp-writebytes-optimize, size: 290634
2014-08-20
21:44
Copy Write() to WriteBytes() to create an arena for performance hacking. file: 11034dcb5a check-in: [6e08d8924a] user: dgp branch: dgp-writebytes-optimize, size: 292085
17:50
Docs for Tcl_CreateChannelHandler() state that the registered handler proc will be called back with a mask value. "Mask is an integer mask indicating which of the requested conditions actually exists for the channel; it will contain ***a subset of the bits from the mask argument*** to Tcl_CreateChannelHandler when the handler was created." (emhpasis added). Tcl_NotifyChannel is not honoring this. It passes a mask value that may contain bits not in common with the mask argument to T_CCH(). This commit is a one-liner patch adding in the masking step to make things behave as documented. Thanks to apn for digging this out. (In combination with other questionable code, this led to a hang in test http-4.6 on Windows) Tcl_NotifyChannel() has had this error in all of recorded Tcl history. It's hard to imagine any code dependent on it though. If any exists, it can be revised to pass the mask value it truly needs to T_CCH() and end up with code suitable both before and after this change. If you concur, please merge to core-8-5-branch, and I'll take it from there. file: 98b40a1869 check-in: [f520790052] user: dgp branch: aku-review, size: 287850
2014-08-14
06:49
Merge trunk. Remove (old and deprecated) SystemV timezone information. file: 8edeb0c360 check-in: [2f17676f24] user: jan.nijtmans branch: novem, size: 303764
2014-08-12
15:28
Accommodate the "udp" package, and any other Tcl package that expects a [read] on a channel @ EOF to attempt another pass through the channel drivers instead of immediately returning an empty string. Correcting this misbehavior appears too disruptive in a patch release to a long stable branch. file: 79599a9ab7 check-in: [8cd55feb1d] user: dgp branch: core-8-5-branch, size: 287836
2014-08-06
18:20
Fixed type conversion warnings which break a Win32 debug build (MSVC). file: 542994623e check-in: [bd9c215886] user: andreask branch: trunk, size: 305301
2014-08-02
04:36
Another Preserve/Release on channels is needed during IO finalization. file: b394d668a3 check-in: [c286356bd3] user: dgp branch: trunk, size: 304895
04:25
Another Preserve/Release on channels is needed during IO finalization. file: e4e72c381b check-in: [c22cc5859b] user: dgp branch: core-8-5-branch, size: 287824
2014-08-01
18:36
Updated package "platform" to version 1.0.13. Separated the identifiers "macosx*-i386-x86_64" and "macosx-universal" as incompatible with each other. Plus addition of a cast in tclIO.c to match types in a comparison which otherwise bugs a Windows debug build (warnings are errors). file: 3c8428d4ad check-in: [dcb280116a] user: andreask branch: core-8-5-branch, size: 287730
17:16
Backport the cheaper Preserve/Release on channels. file: 3b02ceb758 check-in: [ddcf91c9bd] user: dgp branch: core-8-5-branch, size: 287719
2014-07-30
02:58
Complete transformation off Tcl_Preserve() legacy onto ref counting. file: e6ca8641fa check-in: [6955f4f7b5] user: dgp branch: trunk, size: 304802
00:22
Reduce the cost of Preserve/Release on channels file: c24818843c check-in: [d77bfcba0a] user: dgp branch: trunk, size: 305046
2014-07-28
01:42
Revise MBRead() to be used in both sync and async modes. file: 961648febe check-in: [f906a935ae] user: dgp branch: dgp-move-buffers, size: 304185
2014-07-27
22:53
Push MBWrite() differences out to callers. file: 7feb11c1b8 check-in: [f9904aa12a] user: dgp branch: dgp-move-buffers, size: 304576
17:20
Rework MBWrite() so it can be used in both sync and async modes. Reduce code duplication. file: a1e4f4b51f check-in: [50f3d36769] user: dgp branch: dgp-move-buffers, size: 304565
2014-07-26
15:44
Use common MBError() routine for sync and async operations. file: 63985c2cfc check-in: [4712a9759c] user: dgp branch: dgp-move-buffers, size: 305477
15:02
Extend the "move buffer" implementation to cover the async case. file: b2b4b75e68 check-in: [3523e77b9b] user: dgp branch: dgp-move-buffers, size: 305664
2014-07-24
15:34
simplify moveBytes selection logic file: 6750c73cc0 check-in: [e29e9fc580] user: dgp branch: dgp-move-buffers, size: 301329
15:24
Make sure MoveBytes error reporting reproduces what CopyData does. Bugward compatibility! file: 1dffe66f6d check-in: [4b830e8027] user: dgp branch: dgp-move-buffers, size: 301404
15:02
Make sure MoveBytes records read error messages. file: 4fd2464a02 check-in: [92f931b2d4] user: dgp branch: dgp-move-buffers, size: 301064
2014-07-23
17:10
Extend the buffer move optimization to the "same encodings" case. file: 92b8716ad0 check-in: [e44c207283] user: dgp branch: dgp-move-buffers, size: 300895
2014-07-22
20:27
merge trunk file: 003ace5dff check-in: [4bfdb8139c] user: dgp branch: dgp-move-buffers, size: 300841
2014-07-17
20:37
merge trunk file: 0642c01865 check-in: [6ba4e4b23d] user: jan.nijtmans branch: novem, size: 296210
2014-07-12
16:15
merge trunk file: fb6dac8521 check-in: [e94bc46f19] user: dkf branch: bug-d5ddbc7f49, size: 298171
16:13
whopper change; now passes test suite on OSX file: a16dee9e65 check-in: [0b38cdbc76] user: dkf branch: bug-d5ddbc7f49, size: 300329
2014-07-10
12:59
Repair buffer indexing error in Tcl_ReadRaw(). file: 05f7031a8b check-in: [0f4ff1ba28] user: dgp branch: trunk, size: 297747
12:52
Repair buffer indexing error in Tcl_ReadRaw() exposed by iogt-6.0 and valgrind. file: 3ffc59d9c3 check-in: [6526c14303] user: dgp branch: core-8-5-branch, size: 287035
2014-07-09
14:44
First draft of using buffer moves in place of buffer copies to create an efficient [chan copy]. file: 35d0ca9725 check-in: [7a8b871fc7] user: dgp branch: dgp-move-buffers, size: 300848
2014-07-04
12:51
merge trunk file: ad9a56af8a check-in: [cc32a8e5c2] user: jan.nijtmans branch: novem, size: 296217
2014-07-02
16:30
[c31ca233ca] Fix TclGetsObjBinary() so that each [gets] rediscovers whether a nonblocking channel is blocked. file: d8dcc8ed1b check-in: [af0d8f3b3c] user: dgp branch: trunk, size: 297754
16:20
[c31ca233ca] Fix TclGetsObjBinary() so that each [gets] rediscovers whether a nonblocking channel is blocked. file: 24d09d795e check-in: [6694ecd6d0] user: dgp branch: core-8-5-branch, size: 287042
2014-06-26
16:01
Fix mismatch of Tcl_Preserve() / Tcl_Release(). file: f22be2acee check-in: [4626888b50] user: dgp branch: trunk, size: 297764
15:59
Fix mismatch of Tcl_Preserve() / Tcl_Release(). file: 8f3f031f8e check-in: [f58a059b16] user: dgp branch: core-8-5-branch, size: 287052
2014-06-24
16:46
Simplify / refactor Tcl_ReadRaw(). No need for CopyBuffer(). file: 11cc06cb2a check-in: [1d2e0d8e55] user: dgp branch: trunk, size: 297783
16:34
Simplify / refactor Tcl_ReadRaw(). No need for CopyBuffer(). file: a31a1dd7a2 check-in: [a9f9ffa7c7] user: dgp branch: core-8-5-branch, size: 287071
2014-06-23
08:41
cleaning up option processing throughout Tcl to use common functions/language file: e296bab4ce check-in: [7e93a07895] user: dkf branch: bug-d5ddbc7f49, size: 300101
2014-06-16
12:40
merge trunk file: 97750ac99d check-in: [f3492bdbad] user: jan.nijtmans branch: novem, size: 298368
2014-06-05
15:20
When too many chars are read by ReadChars() and we trim the limits to get it right on the next pass, don't forget the TCL_UTF_MAX padding demanded by Tcl_ExternalToUtf(). (Thanks for finding that, aku!) Fix the factorPtr management. It was just totaly wrong. The factor should be a ratio of the record of bytes read to the record of chars read. With those fixes, new test io-12.6 covers the "too many chars" code. file: fece9c931c check-in: [2e1e7c8266] user: dgp branch: trunk, size: 299905
15:17
When too many chars are read by ReadChars() and we trim the limits to get it right on the next pass, don't forget the TCL_UTF_MAX padding demanded by Tcl_ExternalToUtf(). (Thanks for finding that, aku!) Fix the factorPtr management. It was just totaly wrong. The factor should be a ratio of the record of bytes read to the record of chars read. With those fixes, new test io-12.6 covers the "too many chars" code. file: 8e0b9b2f01 check-in: [04b06f7cea] user: dgp branch: core-8-5-branch, size: 289193
00:22
Fixed a tricky interaction of IO system and encodings which could result in a panic. The relevant function is ReadChars() (short RC in the following). When the encoding and translation transforms deliver more characters than were requested the iterative algorithm used by RC reduces the value of "dstLimit" (= the number of bytes allowed to be copied into the destination buffer) to force the next round to deliver less characters, hopefully the number requested. The existing code used the byte located just after the last wanted character to determine the new limit. The resulting value could _undershoot_ the best possible limit because Tcl_ExternalToUtf would effectively reduce this limit further, by TCL_UTF_MAX+1, to have enough space for a single multi-byte character in the buffer, and a closing '\0' as well. One effect of this were additional calls to ReadChars() to retrieve the characters missed by a call with an undershot limit. In the limit (sic) however this was also able to cause a full-blown "Buffer Underflow" panic if the original request was for less than TCL_UTF_MAX characters (*), and we are using a single-byte encoding like iso-8859-1. Because then the undershot dstLimit would prevent the next round from copying anything, and causing it to try and consolidate the current buffer with the next buffer, thinking that it had to merge a multi-byte character split across buffer boundaries. (Ad *) For example because the previous call had undershot already and left only such a small amount of characters behind! The basic fix to the problem is to add TCL_UTF_MAX back to the limit, like is done in all the (three) other places in RC setting a new one. Note however that this naive fix may generate a new limit which is the same as the old, or possibly larger. If that happens we act very conservatively and reduce the limit by only one byte instead. While I believe that this last conservative approach will never reduce the limit to TCL_UTF_MAX or less before reaching a state where it returnds the exact amount of requested characters I still added a check against this situation anyway, causing a new panic if triggered. file: ed43cda0b4 check-in: [0f26611a0c] user: andreask branch: core-8-5-branch, size: 289746
2014-06-04
16:42
Revise DiscardOutput() to account for revisions to the loop in FlushChannel() which is its only caller. We need to discard the curOutPtr buffer as well, and not count on another pass through the loop to attempt to flush it (and raise the same failure again?). file: 21618f62f0 check-in: [2a072fdb9a] user: dgp branch: trunk, size: 299631
16:36
Revise DiscardOutput() to account for revisions to the loop in FlushChannel() which is its only caller. We need to discard the curOutPtr buffer as well, and not count on another pass through the loop to attempt to flush it (and raise the same failure again?). file: 4b2d3c418b check-in: [2b1cda088c] user: dgp branch: core-8-5-branch, size: 288919
2014-06-03
17:32
Backport I/O core fixes made known by async socket work on trunk. file: a7a1310ae5 check-in: [c801a8d5cc] user: dgp branch: core-8-5-branch, size: 288774
02:26
These edits make all tests outside of socket-14.* pass on OSX Mavericks. Several socket-14.* tests failing there, and those that pass are very slow about it. Firewall or poor networking configuration may be playing a role. file: ec9d9274bb check-in: [5b3eed19a0] user: dgp branch: dgp-async-socket, size: 299486
2014-06-02
20:03
These edits make the tests socket-14.11.[01] stop hanging, but also introduce a whole raft of test failures. WIP. file: 0d9babe420 check-in: [bf5e0126b5] user: dgp branch: dgp-async-socket, size: 299336
2014-05-31
14:12
Backout checkin 84f992ce50. This fixes test socket-14.11.1 and creates failure in tests *io-1.9. Branch bug-734138ded8 to work out resolution. file: 25108729d9 check-in: [5f5b6fc4b2] user: dgp branch: bug-734138ded8, size: 299220
02:40
Correct the interest masks in the Tcl_CreateFileHandler() calls in PipeWatchProc(). When we are interested in both readable and writable events of a command pipeline channel, we only want the readable from the read end of the pipe, and the writable from the write end of the pipe. file: f935bbbc1a check-in: [0d6ad67b02] user: dgp branch: trunk, size: 299275
02:30
Correct the interest masks in the Tcl_CreateFileHandler() calls in PipeWatchProc(). When we are interested in both readable and writable events of a command pipeline channel, we only want the readable from the read end of the pipe, and the writable from the write end of the pipe. file: 6e5bb9e4e1 check-in: [74a2238ecc] user: dgp branch: core-8-5-branch, size: 288769
2014-05-29
15:04
Refinements of FlushChannel() and its callers. Notably includes removal of the flag BUFFER_READY. file: 9a8c12c0d9 check-in: [37bcb4b42d] user: dgp branch: trunk, size: 299069
2014-05-28
18:58
Refinements of FlushChannel() and its callers. Notably includes removal of the flag BUFFER_READY. file: bf7479f10a check-in: [0ddf09e8bd] user: dgp branch: core-8-5-branch, size: 288563
18:49
Update comment to explain assumptions. file: 863923c99c check-in: [b7bbbbc6ed] user: dgp branch: dgp-flush-channel, size: 288577
18:24
Further simplifications to FlushChannel(). This makes clear the BUFFER_READY flag serves no necessary purpose, so it is removed. file: 068f74982a check-in: [d9e66fbb28] user: dgp branch: dgp-flush-channel, size: 288273
17:14
Expand the IsBufferFull() macro to check non-NULL bufPtr.. file: 3b82c89d83 check-in: [577da77e8c] user: dgp branch: dgp-flush-channel, size: 288999
16:54
Increase size of test io-29.34 so that it more portably tests the case where the OS networking machinery gets backed up and blocks. Added several TODO comments on potential simplifications. file: 88fe0cb90b check-in: [83b2c056eb] user: dgp branch: dgp-flush-channel, size: 288979
2014-05-27
13:28
Move code that can only matter in the first loop iteration out of the loop. file: 3ca7b59bd7 check-in: [38257b5296] user: dgp branch: dgp-flush-channel, size: 288495
2014-05-23
15:08
merge trunk file: 3540e989e6 check-in: [c933efe84d] user: jan.nijtmans branch: novem, size: 297941
2014-05-21
14:37
Fix gcc warning (signed-unsigned compare) file: b536f6884b check-in: [c84093ac60] user: jan.nijtmans branch: trunk, size: 299478
2014-05-20
15:17
Rework the management of the CHANNEL_BLOCKED and CHANNEL_EOF flags, in particular not allowing them to leak between multiple layers of a stacked channel. Much common code refactored into ChanRead(). file: f2ce785f7d check-in: [2a40293a49] user: dgp branch: trunk, size: 299470
15:00
Rework the management of the CHANNEL_BLOCKED and CHANNEL_EOF flags, in particular not allowing them to leak between multiple layers of a stacked channel. Much common code refactored into ChanRead(). file: 4611814468 check-in: [f6b7d496c4] user: dgp branch: core-8-5-branch, size: 288621
2014-05-16
23:17
Merge flag changes. - Wow, no trouble with [chan push] demonstrated. file: f78aa5f1f5 check-in: [960f628ee8] user: dgp branch: dgp-trunk-flag-repair, size: 299484
19:11
Improved use of EOF state to avoid worthless allocations. file: 3f0e41664b check-in: [916e33672f] user: dgp branch: dgp-channel-flag-repair, size: 288635
18:45
Move the resets and testings of the BLOCKED flag to where they make more sense. file: 196f647a22 check-in: [b7aafa1d2d] user: dgp branch: dgp-channel-flag-repair, size: 288529
15:33
merge trunk file: 0e72fecd40 check-in: [44638ca040] user: dgp branch: novem, size: 297190
15:23
merge trunk file: 1a674108e5 check-in: [9e2a793a91] user: dgp branch: dgp-trunk-flag-repair, size: 299184
15:10
merge 8.5 file: 01bce1ea73 check-in: [98814a9861] user: dgp branch: trunk, size: 298727
15:05
merge 8.5 file: 0fe47b4760 check-in: [673526a228] user: dgp branch: dgp-channel-flag-repair, size: 288484
14:47
merge 8.5 file: 4f4212b8f5 check-in: [66fb298ca6] user: dgp branch: bug-io-32.11, size: 287922
14:47
Merge completion of dgp-read-bytes branch. file: 43ca1928d6 check-in: [a2f2c22575] user: dgp branch: bug-io-32.11, size: 287936
14:40
Bug fix - accept consumption of the trailing newline in crlf with no characters produced. Also delete false assertions. file: 5dfcc00730 check-in: [d407a02dd2] user: dgp branch: bug-io-32.11, size: 299213
2014-05-15
11:04
Push the setting and clearing of CHANNEL_BLOCKED flag to the more inner parts of the channel read machinery. file: 571f9e6ad7 check-in: [39ace581ea] user: dgp branch: dgp-channel-flag-repair, size: 287687
2014-05-13
18:49
Refactored much management of the BLOCKED and EOF flags into ChanRead() then began repairing some of the logic about them. Tests iogt-2.* now fail because they've been crafted as experiments recording the fine detail of reflected channel driver calls, and fixing the management of channel flags is changing that. zlib-8.5 also needed adjustment to reflect that an EOF set must come with an empty string read when flags are functioning properly. file: 764ac1f50e check-in: [98736462fb] user: dgp branch: dgp-trunk-flag-repair, size: 298387
18:24
Rework Tcl_ReadRaw() mostly taking things out of the loop that never repeat. file: 711f2a3869 check-in: [e1c467edcd] user: dgp branch: dgp-channel-flag-repair, size: 287521
16:42
Salvaged what was left of value in the dgp-read-bytes-detour branch. Refactored much management of the BLOCKED and EOF flags into ChanRead() then began repairing some of the logic about them. Tests iogt-2.* now fail because they've been crafted as experiments recording the fine detail of reflected channel driver calls, and fixing the management of channel flags is changing that. file: 8a5be194c7 check-in: [94b7cdc521] user: dgp branch: dgp-channel-flag-repair, size: 287914
2014-05-09
13:50
merge trunk file: 4914a462e5 check-in: [239fb8a769] user: jan.nijtmans branch: novem, size: 296393
2014-05-08
17:38
Merge the reforms of dgp-trunk-read branch into trunk. (port of dgp-read-bytes) Large overhaul of I/O read operations - Protects integer overflow of buffers, reusing append machinery - Forces -buffersize changes to take place when commanded - Uses assertions to simplify code in "can't happen" situations - Eliminated duplication of -translation processing - Fixes bugs io-35.18b and io-35.20 file: fda4d82a2f check-in: [d17b42d5cb] user: dgp branch: trunk, size: 297930
17:30
Merge the reforms of dgp-read-bytes branch into 8.5+ releases. Large overhaul of I/O read operations - Protects integer overflow of buffers, reusing append machinery - Forces -buffersize changes to take place when commanded - Uses assertions to simplify code in "can't happen" situations - Eliminated duplication of -translation processing - Fixes bugs io-35.18b and io-35.20 file: 8e1c8dd353 check-in: [ea760ac244] user: dgp branch: core-8-5-branch, size: 287125
16:12
merge trunk file: 6838f0e303 check-in: [b345c44424] user: dgp branch: dgp-trunk-read, size: 297944
16:03
Fix the panic in iogt-2.5. Back in 2011, Bugs 3384654 and 3393276 first noticed troubles with ChannelBuffer sharing, but the magnitude of the problem wasn't truly grasped. A fix was applied that turned out to be more of a band-aid workaround. Now that the real fix is in place, the band-aid is actually preventing it working properly in thie case. Rip it off! file: 8f40b9cf38 check-in: [cc5f6a9f05] user: dgp branch: trunk, size: 305010
13:01
Revert the iogt-2.5 fix. For now one panic is better than widespread memory leaks. file: d78d03f0e0 check-in: [1f0997a0f1] user: dgp branch: trunk, size: 305037
03:28
merge trunk file: f66d18cb0c check-in: [41b555c6c8] user: dgp branch: dgp-trunk-read, size: 298013
03:13
Merge 8.5. file: dd6338dc0d check-in: [6373847bf0] user: dgp branch: trunk, size: 305079
02:55
Merge 8.5. file: 1641746455 check-in: [355b7c916f] user: dgp branch: dgp-read-bytes, size: 287139
02:38
Stop leak in iocmd-21.22. file: 222dd3e96d check-in: [bd77beabda] user: dgp branch: core-8-5-branch, size: 294402
2014-05-07
02:28
Stop leak in io-53.5. file: 6169eb2862 check-in: [923384ef74] user: dgp branch: core-8-5-branch, size: 294355
2014-05-06
23:23
Stop memory leak in io-29.34 file: 04c2a50cb2 check-in: [9ed25477ae] user: dgp branch: core-8-5-branch, size: 294323
22:34
Stop memory leak in io-29.27. file: 3be416dc8a check-in: [710c762201] user: dgp branch: core-8-5-branch, size: 294259
17:33
Symptom relief. Make test stop panicking. This is not the proper final answer. ChannelBuffer management in FlushChannel is simply not robustly correct yet. file: a220f6cea3 check-in: [299eab2396] user: dgp branch: trunk, size: 304901
15:23
Add Panic call to better identify where iogt-2.5 goes wrong. file: d25b4c5696 check-in: [bd7a70e510] user: dgp branch: trunk, size: 304859
2014-05-05
13:23
Merge GotFlag() backport from 8.5. Conflicts galore! file: 7cd7b4bd95 check-in: [b1ed89a610] user: dgp branch: dgp-read-bytes, size: 286961
09:17
Backport "GotFlag" macro from Tcl 8.6. Makes code more readable. No change in functionality. file: 4b9f66f9ca check-in: [70147dfbb6] user: jan.nijtmans branch: core-8-5-branch, size: 294224
2014-05-02
15:58
merge trunk file: 3dc2660557 check-in: [8940c7f376] user: dgp branch: dgp-trunk-read, size: 297715
15:41
merge 8.5 file: 4feefc7692 check-in: [5c1344169d] user: dgp branch: dgp-read-bytes, size: 287031
15:06
Backport channel self restacking support. (Test iogt-2.4). file: f4f536dbf5 check-in: [65f9e5c5ef] user: dgp branch: core-8-5-branch, size: 294301
14:45
Add some comments about possible other self-restacking troubles. file: 311c2c9785 check-in: [cc96a1b1e4] user: dgp branch: dgp-demo, size: 304781
13:02
Fully restore topChan resetting to accommodate self-restacking channels. file: dcfa22ff42 check-in: [479b266698] user: dgp branch: dgp-demo, size: 304492
12:39
Re-enable buffer recycling. file: 4de3a79933 check-in: [19ba1dca2c] user: dgp branch: dgp-demo, size: 304163
07:15
merge novem file: f351fb6b28 check-in: [08a7e90291] user: jan.nijtmans branch: novem-more-memory-API, size: 302245
2014-05-01
16:33
Stop the segfault in iogt-2.4. First by changing the UpdateInterest() call that triggers it. "downChanPtr" may no longer be the right argument at that point. Second, after ending the segfault, the test became an infinite loop (nested unstacking?! whoa.), so revised the test to one that terminates (and passes). Left behind a comment that the recursive unstacking case may require more examination. file: cced0b6b66 check-in: [a6e8d96c80] user: dgp branch: dgp-demo, size: 304168
15:16
merge trunk file: e1b1595769 check-in: [ace047c40e] user: jan.nijtmans branch: novem, size: 302237
15:13
merge trunk file: c1f04ab4d3 check-in: [22914ee992] user: dgp branch: dgp-demo, size: 303897
15:00
merge trunk file: e4e8c12af0 check-in: [52f2afaf4f] user: dgp branch: dgp-trunk-read, size: 296708
14:52
merge 8.5 file: fd57ec7d96 check-in: [c88761f6af] user: dgp branch: dgp-read-bytes, size: 285323
01:26
Merge in the fixes for improper ChannelBuffer sharing via recycling. file: 3869d88968 check-in: [a63b3cbe41] user: dgp branch: trunk, size: 303774
2014-04-30
19:54
Stop the segfaults in [close] during [gets] tests. Not sure this is the right behavior, but it's better than crashing. file: 206c5299f0 check-in: [04b1f8b14c] user: dgp branch: core-8-5-branch, size: 292593
19:33
Panic message to pinpoint the cause of iocmd-21.23 segfault. file: fbf5bc5370 check-in: [7bbdf769a2] user: dgp branch: core-8-5-branch, size: 292652
2014-04-29
17:40
Make sure no shared ChannelBuffers get recycled. file: 698556df81 check-in: [c101f46322] user: dgp branch: core-8-5-branch, size: 292583
17:04
merge trunk file: 769fc487df check-in: [e344fa9b49] user: dgp branch: dgp-demo, size: 303704
16:47
Fix bug exposed when buffer recycling is disabled. file: 092ec6afaa check-in: [84f992ce50] user: dgp branch: trunk, size: 303581
16:36
Fix bug exposed when buffer recycling is disabled. file: c9c2205acc check-in: [9823e74a67] user: dgp branch: core-8-5-branch, size: 292400
15:54
Revise the logic for setting TCL_ENCODING_END in the outputEncodingFlags so it does not rely on buffer recycling. file: ee4ec65f48 check-in: [bf4b0651be] user: dgp branch: dgp-no-buffer-recycle, size: 292405
2014-04-25
20:12
Disable buffer recycling to expose bugs for fixing. file: 71445aaee6 check-in: [e9c2ad7207] user: dgp branch: dgp-no-buffer-recycle, size: 292350
19:51
Disable buffer recycling, which creates mysteries. file: f94f1f7483 check-in: [0e64d0aa58] user: dgp branch: dgp-demo, size: 303649
17:34
Test iortrans-4.8.2 demos an infinite loop. Possible trouble with pushback buffers. file: c3ffe12f9b check-in: [71c708ce30] user: dgp branch: dgp-demo, size: 303644
2014-04-21
20:02
merge trunk file: 6fb6bcccea check-in: [58bcc7a29a] user: dgp branch: dgp-trunk-read, size: 296460
20:01
merge 8.5 file: 7a4a2cce11 check-in: [621d5cbc6e] user: dgp branch: dgp-read-bytes, size: 285075
19:04
Merge refcounting machinery for ChannelBuffer. file: 572318365e check-in: [0c1015d94d] user: dgp branch: trunk, size: 303526
18:55
Added a refcounting mechanism to ChannelBuffers. Other edits to stop segfaults in tests iocmd-21.2[12]. file: 12e3e7af5c check-in: [13886141d8] user: dgp branch: core-8-5-branch, size: 292345
2014-04-16
20:11
merge 8.5 file: db1d1fe6eb check-in: [97f35a8071] user: dgp branch: dgp-read-bytes, size: 284271
17:35
merge trunk file: a69cc45c12 check-in: [505682a5bb] user: dgp branch: dgp-trunk-read, size: 295611
2014-04-07
14:56
merge trunk file: 0aa4d4912f check-in: [f24df1717c] user: jan.nijtmans branch: novem, size: 301143
2014-04-04
11:14
Fix for Bug [97069ea11a]: Set return message in close if a flush error is reported (which may be an error from a background flush) file: 1f3e307385 check-in: [7aa743c0ee] user: oehhar branch: trunk, size: 302680
2014-04-01
13:06
Imported fix for bug [97069ea11a] from branch bug-97069ea11a: empty error message on stalled background flush after async socket connect fail file: e5a70c30c6 check-in: [0fa84c1e50] user: oehhar branch: bug-13d3af3ad5, size: 302239
11:31
Fix test failure socket-2.9: "1 {not owner}" instead of "1 {couldn't open socket address already in use}" by only setting returned error message if not jet set. file: 40ce308f57 check-in: [5277cd7d5d] user: oehhar branch: bug-97069ea11a, size: 291544
09:52
Set return message in close if a flush error is reported (which may be an error from a background flush). Ticket [97069ea11a] file: caa0dab1b9 check-in: [d9c2394aec] user: oehhar branch: bug-97069ea11a, size: 291458
2014-03-31
18:47
merge trunk file: 05ea421f32 check-in: [33f13ba67c] user: jan.nijtmans branch: novem, size: 300810
2014-03-28
20:29
Merge minimal fix for iocmd-23.11. Note that top channel regeneration is removed, so that Preserve/Release call pairs are sure to operate on the same pointers. Other bug fixes may need to change that. file: 67ae4012e2 check-in: [4c19c39276] user: dgp branch: trunk, size: 302347
2014-03-27
21:35
Minimal patch to fix iocmd-23.11. Might not be the best fix, but is *a* fix. file: a201fb2927 check-in: [b846182cdc] user: dgp branch: core-8-5-branch, size: 291211
2014-03-23
20:59
Merge the checkins of the dgp-read-bytes branch onto the trunk, up to and including checkin a1e82fb63e . Do not merge checkin bae1c688f2 which starts to take the dgp-read-bytes branch into directions apparently unfriendly to stacked channels, which tests for [chan push] on the trunk help us to detect. file: 519c18eb0d check-in: [c4c1cd81e4] user: dgp branch: dgp-trunk-read, size: 294813
2014-03-21
14:45
missing declaration file: 2cc23278ed check-in: [44ad35d49a] user: dgp branch: dgp-read-bytes-detour, size: 283854
12:57
Fixup ChanRead() header. Note (dstSize > 0) precondition. file: 13d87d4629 check-in: [466dfbd509] user: dgp branch: dgp-read-bytes-detour, size: 283790
02:36
Documentation header for ChanRead() file: 82c58626cc check-in: [594b1261d6] user: dgp branch: dgp-read-bytes-detour, size: 283610
2014-03-20
23:21
Both callers of ChanRead() have simlar epilogs. Shift that into ChanRead and refactor. file: 0d3fc2bac4 check-in: [bae1c688f2] user: dgp branch: dgp-read-bytes-detour, size: 282922
20:18
Don't allow buffer recycling to prevent or delay buffersize shrinkage. file: 8f94e171e3 check-in: [a1e82fb63e] user: dgp branch: dgp-read-bytes, size: 283526
19:25
Stop routine clearing of CHANNEL_EOF. Only clear when there's a reason (seek, eofchar change, ungets). Otherwise, once you hit EOF you stay there. file: bee20ed3ef check-in: [4da5102566] user: dgp branch: dgp-read-bytes, size: 284082
16:31
Use assertions about the pushback buffers to simplify their handling. Mark several things left TODO. Some tidying. file: 112775114b check-in: [059316c224] user: dgp branch: dgp-read-bytes, size: 284618
2014-03-19
21:43
Let TranslateInputEOL handle the "\r$eofChar" sequence in CRLF mode. file: 53c93f2349 check-in: [87cabe74cb] user: dgp branch: dgp-read-bytes, size: 284529
20:32
Complete rewrite of DoRead(). file: 29c468fcbd check-in: [b0fec86516] user: dgp branch: dgp-read-bytes, size: 284755
2014-03-18
04:06
DoRead refactoring WIP. file: ee8f0ecd67 check-in: [e942c49131] user: dgp branch: mistake, size: 288717
2014-03-17
17:56
Remove long dead "BAD_BLOCKING" support code so it no longer confuses people reading/editing this code. file: 2d20659e03 check-in: [b97275fff8] user: dgp branch: dgp-read-bytes, size: 285876
2014-03-11
16:51
Compress code for better single screen viewing. file: df3e717a7f check-in: [b1b64885a9] user: dgp branch: dgp-read-bytes, size: 289499
03:38
Trial rewrite of AUTO input translation. file: 6b8707fbf3 check-in: [8753583e66] user: dgp branch: dgp-read-bytes, size: 290120
2014-03-10
19:30
.... and then the bug fix. file: 7eb9084fc5 check-in: [626308d6df] user: dgp branch: dgp-read-bytes, size: 289304
19:00
Rewrite CRLF translation to use more system calls. file: 4bd703e809 check-in: [6ac30093f3] user: dgp branch: dgp-read-bytes, size: 289304
17:58
Bring CRLF translation in parallel with others. file: ec3195c888 check-in: [1e9ea0b532] user: dgp branch: dgp-read-bytes, size: 289036
03:09
TranslateInputEOL doesn't need to return anything. No caller cares. Other optimizations and simplifications. file: 0a527afb59 check-in: [a534865f9d] user: dgp branch: dgp-read-bytes, size: 289097
2014-03-07
20:15
TranslateInputEOL() callers no longer need assert dstLen <= srcLen. file: 9aebc54794 check-in: [ab50666290] user: dgp branch: dgp-read-bytes, size: 288618
19:43
Simplify the input eof char scan. Update some comments. file: ebee31a654 check-in: [ac39a58a9c] user: dgp branch: dgp-read-bytes, size: 288671
2014-03-06
15:51
Variable "rawStart" serves no purpose. file: 3512d34491 check-in: [961f9c82ce] user: dgp branch: dgp-read-bytes, size: 288373
2014-03-05
19:41
Remove old dead code; silence compiler warnings; tidy up. file: bce3e46cb5 check-in: [df25cce286] user: dgp branch: dgp-read-bytes, size: 288409
17:16
Adapt CopyAndTranslateBuffer() to changes in TranslateInputEOL(). Notably no longer using the INPUT_NEED_NL flag. file: b153828fdd check-in: [e9e06ab343] user: dgp branch: dgp-read-bytes, size: 299122
14:23
Merge repair to correct failing tests. file: 06bcc85bb5 check-in: [be0a413ba3] user: dgp branch: dgp-read-bytes, size: 298396
2014-03-01
03:01
Fixups make the test suite almost pass (except *io-39.17) file: f07a60f1d1 check-in: [b745eb9ba4] user: dgp branch: dgp-read-bytes, size: 298416
2014-02-28
19:01
Bring over the ReadChars rewrite for integration into the other I/O work. file: 7178128998 check-in: [22a9f73877] user: dgp branch: dgp-read-bytes, size: 298406
18:28
tidy up. file: 768713bc8f check-in: [967f356dde] user: dgp branch: dgp-read-chars, size: 299043
18:25
More ReadChars rewriting. Test suite now passes. Note that this reform simplifies ReadChars a fair bit (at least in my eyes). Also it does away with the use of an INPUT_NEED_NL flag, using the same strategy for partial \r\n sequences as is used for incomplete multibyte chars. file: a6eaf3b847 check-in: [8928ad3eb5] user: dgp branch: dgp-read-chars, size: 299186
2014-02-27
20:21
Work in progress attempting a ReadChars rewrite. file: 74caa2dbbd check-in: [914a1b6351] user: dgp branch: dgp-read-chars, size: 294719
20:11
remove comment file: cbc372df66 check-in: [5d763d1af8] user: dgp branch: dgp-read-bytes, size: 290023
2014-02-26
11:26
More coverage tests and bug fixes. file: 4c3bc75a66 check-in: [929bdbd0af] user: dgp branch: dgp-read-bytes, size: 290025
2014-02-24
21:25
Reduce ReadBytes to simplest expression. file: d6ed50af7a check-in: [fa8b2ead5a] user: dgp branch: dgp-read-bytes, size: 290047
21:01
simplification trims file: dcd5fac447 check-in: [d5fce7db96] user: dgp branch: dgp-read-bytes, size: 290401
19:11
Merge the stricter binary mode experiment. file: b3e46091c7 check-in: [b3f0eb6d21] user: dgp branch: dgp-read-bytes, size: 290942
2014-02-21
15:12
Simplify ReadBytes based on new constraints. file: 653e8f5617 check-in: [adeabf71cf] user: dgp branch: dgp-experiment, size: 291099
15:02
fix type error file: 1dbe09b796 check-in: [80330ed77d] user: dgp branch: dgp-experiment, size: 291008
2014-02-20
21:23
Switch consistently on the narrower def of binary mode. file: 7c3782bba7 check-in: [5a647c7aae] user: dgp branch: dgp-experiment, size: 291008
20:31
Can we send some binary reads down the char-reading path? file: f773f3010c check-in: [13ebbaf45b] user: dgp branch: dgp-experiment, size: 290934
03:51
Refactoring repair to fix failing test. file: 1e544fcdc6 check-in: [2e3d8aa19c] user: dgp branch: dgp-read-bytes, size: 290654
2014-02-19
03:45
Next coverage test to expose another refactoring error. file: e2d7b9999d check-in: [7ee5a61b87] user: dgp branch: dgp-read-bytes, size: 289997
03:36
Shortcut ReadBytes() when it's a no-op. file: 4742aaeb65 check-in: [cc398cf78d] user: dgp branch: dgp-read-bytes, size: 290022
2014-02-18
23:20
Callers of TranslateInputEOL are expected to manage the INPUT_NEED_NL flag. file: df5eb92667 check-in: [0426499beb] user: dgp branch: dgp-read-bytes, size: 290001
21:27
Another coverage test that reveals refactoring error. file: a4bb617656 check-in: [be16a4865e] user: dgp branch: dgp-read-bytes, size: 289741
18:35
coverage test for -translation cr file: 4150c7d102 check-in: [b79ce5761c] user: dgp branch: dgp-read-bytes, size: 289740
18:26
Refactor correction exposed by coverage test. file: 1757125a14 check-in: [8619f9ff5d] user: dgp branch: dgp-read-bytes, size: 289764
17:54
Coverage test for -translation auto handling of INPUT_SAW_CR flag. Demonstrates refactor failure. file: 9bec7d807a check-in: [18b306d083] user: dgp branch: dgp-read-bytes, size: 289757
2014-02-11
19:53
Refactor so that CopyAndTranslateBuffer() calls on TranslateInputEOL() instead of duplicating so much of its function. Note the testing gaps. file: d222e840b9 check-in: [26bac705c9] user: dgp branch: dgp-read-bytes, size: 289782
2014-02-06
22:10
merge trunk file: e34440d678 check-in: [6828d86c67] user: jan.nijtmans branch: novem, size: 300369
19:04
Revised ReadChars to restore an attempt to make sure we do not short read because of a false notion of limited storage space. The test suite does not appear to demonstrate any case where this matters. Could be an incomplete test suite, or an example of pointless code. file: ac64750eb0 check-in: [8a185f4fe9] user: dgp branch: dgp-may-be-pointless, size: 289532
16:33
merge 8.5 file: fc6bc52971 check-in: [3d3823e676] user: dgp branch: dgp-read-bytes, size: 289384
2014-02-04
16:24
Simplify the core output operations of channels. Reduce duplicative and dead code. file: 4377e1473b check-in: [af063120ee] user: dgp branch: trunk, size: 301906
2014-01-31
22:07
Simplify macro typecasting. file: fab5b0b705 check-in: [77d1c32097] user: dgp branch: dgp-optimize-output-stage, size: 290823
20:42
The "channel" Tcl_ObjType is caching only. It never needs an UpdateString routine. It's also static to the tclIO.c file. file: 5f84cae0d2 check-in: [3be587ea63] user: dgp branch: dgp-optimize-output-stage, size: 290923
20:02
Do not call updateStringProc directly. We have TclGetString() for that. file: 9a04a47013 check-in: [16cebba90b] user: dgp branch: dgp-optimize-output-stage, size: 291979
09:26
merge trunk file: c2e59d10a2 check-in: [9cbf304e98] user: jan.nijtmans branch: novem, size: 314772
2014-01-30
20:10
Refactor to eliminate the DoWriteChars() layer. file: bc80e2db79 check-in: [1fb1e81ddc] user: dgp branch: dgp-optimize-output-stage, size: 292243
19:30
Eliminate DoWrite(). It duplicates WriteBytes(). file: 079d8bfbf5 check-in: [4a35001f56] user: dgp branch: dgp-optimize-output-stage, size: 293553
19:13
Trial: Implement DoWrite() as WriteBytes(). file: 601e9a63e1 check-in: [e38265e698] user: dgp branch: dgp-optimize-output-stage, size: 297888
18:45
Simplification and cleanup enabled by last commit. file: 3a5633a771 check-in: [df0dfbf28d] user: dgp branch: dgp-optimize-output-stage, size: 297824
18:31
Refactor WriteChars() and WriteBytes() into simple wrappers of a common routine Write(). file: 87b209323d check-in: [d651018d94] user: dgp branch: dgp-optimize-output-stage, size: 305753
14:51
Eliminate the use of a staging buffer in WriteChars(). file: 126643b7f9 check-in: [f5f5df0f00] user: dgp branch: trunk, size: 316309
2014-01-28
20:23
The outputStage field is now unused, so never allocate it. file: 04de13d4c5 check-in: [d89e241ea4] user: dgp branch: dgp-optimize-output-stage, size: 305241
20:19
tidy things up file: 2d57bf5a09 check-in: [69fc4bcc62] user: dgp branch: dgp-optimize-output-stage, size: 306164
18:51
Working code with no staging buffer use. file: 997710ff0e check-in: [d6de6b35d8] user: dgp branch: dgp-optimize-output-stage, size: 310941
11:04
WIP file: 6bdd424fcc check-in: [e1ed4ca828] user: dgp branch: dgp-optimize-output-stage, size: 309436
2014-01-27
17:35
Revise the Tcl_Append* machinery to tolerate NULL bytes to append. Then have ReadChars() use that machinery to resize buffer receiving input, rather than invent its own version. Simplify ReadChars() callers. file: f6206e3164 check-in: [dcc87ec669] user: dgp branch: dgp-read-bytes, size: 306139
2014-01-25
21:42
merge trunk file: e8c57e6473 check-in: [5fb12de009] user: jan.nijtmans branch: novem, size: 317035
2014-01-24
22:33
merge 8.5 file: 15e5c5858f check-in: [3920660b95] user: dgp branch: dgp-read-bytes, size: 307067
21:52
In WriteChars(), eliminate the copy step through a staging buffer when it is not required for channel translation. file: 5a0046ad06 check-in: [d76ed8a13f] user: dgp branch: trunk, size: 318572
17:38
Eliminate the copy to a staging buffer when that serves no functional purpose. file: 11ecdc8056 check-in: [68c21e5139] user: dgp branch: dgp-optimize-output-stage, size: 307578
2014-01-21
22:08
There is no need for ReadBytes() or its caller(s) to track how many bytes are actually stored in objPtr. The ByteArray Tcl_ObjType already has the machinery to take care of this. file: ddf3dbfe83 check-in: [4d0dcf283d] user: dgp branch: dgp-read-bytes, size: 307028
21:32
Backport of bytearray append machinery to support bug fixes in ReadBytes. file: d9c3012e50 check-in: [9e237cce30] user: dgp branch: dgp-read-bytes, size: 307388
2014-01-17
09:43
remove some dead code file: f51ee389e3 check-in: [a9e0697268] user: dkf branch: bug-272e866f1e, size: 318382
2014-01-15
20:21
[272e866f1e][965a39e314] Revise ReadBytes so that it uses the bytearray growth algorithm already in TclAppendBytesToByteArray() rather than poorly making its own. file: 3eaf7cb074 check-in: [128d902c33] user: dgp branch: bug-272e866f1e, size: 318812
2013-09-27
16:38
Clean compile on OSX file: 4bc852d088 check-in: [adad1a60c5] user: dkf branch: novem-64bit-sizes, size: 317641
2013-09-26
13:13
merge novem WARNING: No checks of build-ability done yet. file: 5b4c705f94 check-in: [2688d65077] user: dkf branch: novem-64bit-sizes, size: 317629
2013-05-29
16:24
Fix C99 comment-ism breaking the native AIX compiler. HPUX likely as well. file: 61eaeb7eca check-in: [dd32313fb4] user: andreask branch: core-8-5-branch, size: 307539
2013-05-01
21:13
Backport 8.6's fix [checkin 5af0d249de] to [Bug 2901998]: Inconsistent buffered I/O. Tcl's I/O now flushes buffered output before reading, discards buffered input before writing, etc. file: 3237c1f25d check-in: [e7d7fe409a] user: ferrieux branch: core-8-5-branch, size: 307535
2013-02-27
12:06
merge trunk. Implement Tcl_VarTraceInfo and Tcl_UpVar as macro. file: 29f52d4082 check-in: [fa671b9c4f] user: jan.nijtmans branch: novem, size: 316996
2013-02-26
17:48
Remove from tclIO.h structs used only in tclIO.c. file: 8395b525d1 check-in: [f02d4b5c29] user: dgp branch: trunk, size: 318533
17:37
structs *ChannelHandler* GetsState CopyState used only locally. Remove from tclIO.h. file: 607266365b check-in: [cee6202b4c] user: dgp branch: core-8-5-branch, size: 305686
17:15
structs ChannelHandler ChannelHandlerEvent GetsState CopyState used locally. Remove from tclIO.h. file: dbe1aa86db check-in: [b8a10548fd] user: dgp branch: core-8-4-branch, size: 285582
16:38
struct NextChannelHandler used only locally. Remove from tclIO.h. file: 80d78c40aa check-in: [f04cd919ee] user: dgp branch: core-8-4-branch, size: 282475
2013-02-25
18:17
Repair linked list management in Tcl_DeleteCloseHandler(). CloseCallback struct used only locally. Remove from tclIO.h. file: 16c0bf3f5e check-in: [c3e51e7bce] user: dgp branch: trunk, size: 314174
18:15
Repair linked list management in Tcl_DeleteCloseHandler(). CloseCallback struct used only locally. Remove from tclIO.h. file: 65cd8e1c5f check-in: [0998e957ef] user: dgp branch: core-8-5-branch, size: 301334
18:05
Repair linked list management in Tcl_DeleteCloseHandler(). CloseCallback struct is used only locally. Remove from tclIO.h. file: 90a26d04e5 check-in: [5a27ca7124] user: dgp branch: core-8-4-branch, size: 281237
2013-02-17
22:14
merge trunk file: e52d604295 check-in: [b811284fad] user: jan.nijtmans branch: better-deprecation, size: 312235
2013-02-03
17:17
merge novem file: fee2d3ce1d check-in: [f0ab71bc6c] user: jan.nijtmans branch: novem-more-memory-API, size: 312201
16:05
merge trunk file: 76372ab34a check-in: [127b30eda5] user: jan.nijtmans branch: novem, size: 312193
2013-01-31
10:31
merge core-8-5-branch file: 57505311f5 check-in: [f9be79d941] user: jan.nijtmans branch: trunk, size: 313730
2013-01-29
10:46
Change core to use repr->twoPtrValue.ptr1 in stead of repr->otherValuePtr (which is exactly the same), but also set repr->twoPtrValue.ptr2 to NULL explicitly. This allows repr->twoPtrValue.ptr2 to be used for another purpose (experimental): Store the StringObj internal representation there when available. file: bddbd308ae check-in: [4918a10d3d] user: jan.nijtmans branch: no-shimmer-string-length, size: 300890
2013-01-25
23:38
merge novem file: 91dfb76eda check-in: [6d83b97710] user: jan.nijtmans branch: novem-more-memory-API, size: 312195
2013-01-24
10:37
Convert Tcl_GetIndexFromObj implementation to macro file: 9ef3e7aafe check-in: [039696e2d8] user: jan.nijtmans branch: novem, size: 312187
2013-01-02
11:58
merge trunk. tclStubLib.c: protect loading incompatible Tcl9 extensions in Tcl8 file: 58a0a87e05 check-in: [4919da4fc4] user: jan.nijtmans branch: novem-more-memory-API, size: 312218
2012-12-21
10:13
remove unnecessary struct names, which only pollute the "struct" namespace for the compiler. file: efbde1f23b check-in: [7752ee08e3] user: jan.nijtmans branch: novem, size: 312210
2012-12-12
21:21
More memory API changes, mainly char* -> void* and unsigned -> size_t file: 1319076588 check-in: [19fb92fb72] user: jan.nijtmans branch: novem-more-memory-API, size: 312237
2012-12-10
20:54
merge trunk file: 9a0a5bad63 check-in: [94274c0c5b] user: jan.nijtmans branch: novem, size: 312229
2012-12-08
17:13
Fix busyloop at exit under TCL_FINALIZE_ON_EXIT when there are unflushed nonblocking channels. Thanks Miguel for spotting. file: 0766f63dcd check-in: [3a000c424c] user: ferrieux branch: trunk, size: 313724
2012-12-06
15:43
Use Tcl_EvalEx in pkgb.dll. Same functionality. More deprecated function replacements file: 5107bb122b check-in: [6f8010216f] user: jan.nijtmans branch: better-deprecation-85, size: 300933
2012-12-03
08:11
merge core-8-5-branch eliminate more usage of to-be-deprecated functions file: ed3346c65e check-in: [976aeca8c6] user: jan.nijtmans branch: better-deprecation-85, size: 300911
2012-11-25
18:27
merge novem file: e46dfbdb75 check-in: [ba36ca6cfd] user: dkf branch: novem-64bit-sizes, size: 312802
15:21
Clean compile on OSX - except for usual warnings - and passes test suite. file: 88120b776b check-in: [1ef028ae69] user: dkf branch: novem-64bit-sizes, size: 314370
2012-11-23
13:42
stop io.test from busylooping on unix file: cbd60f71eb check-in: [af95eda298] user: dkf branch: novem-64bit-sizes, size: 314350
2012-11-22
23:20
now, some tests even pass! file: 7c0153a7f5 check-in: [a9b17dd321] user: dkf branch: novem-64bit-sizes, size: 314264
2012-11-21
10:18
more conversion of code, still not running test suite at all file: 2141fd55f5 check-in: [e648a1571f] user: dkf branch: novem-64bit-sizes, size: 314388
00:42
converting to use TCL_STRLEN file: 681482a999 check-in: [2afb72a22d] user: dkf branch: novem-64bit-sizes, size: 314485
2012-11-19
12:17
Merge trunk <p>Adapt Tcl_Tell and Tcl_Seek to use the new type file: 39473e7826 check-in: [d2181b6ae0] user: jan.nijtmans branch: tcl_nosize, size: 314034
11:17
Remove some undocumented - obsolete - function from the API with 'Old' in the name. file: a30b800080 check-in: [4648cb9db2] user: jan.nijtmans branch: novem, size: 312213
10:20
Merge novem. <p>Introduce TCL_SIZE_T type. Not complete yet. file: e3cedd62fb check-in: [a3ee6b3635] user: jan.nijtmans branch: tcl_nosize, size: 314042
06:41
now a clean compile on OSX in non-debug mode file: 2ab34a035e check-in: [b814e8d7e8] user: dkf branch: novem-64bit-sizes, size: 314469
2012-11-18
07:39
Better programming practice, no literal '-1' in source code. Might even be useful for 64bit-sizes branch <p>add TCL_NOSIZE as internal defined for -1, and use it in a lot of places Ass this function argument should be size_t, not ssize_t (still to be TIPped), something like this will be needed anyway. file: 9ad35fd272 check-in: [11a1d1e174] user: jan.nijtmans branch: tcl_nosize, size: 313868
00:06
another batch of conversions file: 7c61f746c7 check-in: [7698b769e5] user: dkf branch: novem-64bit-sizes, size: 314426
2012-11-16
14:15
More work done. Still I am finding places where int should be size_t and reverse. file: a8c6ec5062 check-in: [d348e679f7] user: jan.nijtmans branch: novem-64bit-sizes, size: 313858
2012-10-03
15:29
When checking for std channels being closed, compare the channel state, not the channel itself so that stacked channels do not cause trouble. file: 6d5e53c2d8 check-in: [00425ee7d7] user: dgp branch: core-8-5-branch, size: 300884
15:18
When checking for std channels being closed, compare the channel state, not the channel itself so that stacked channels do not cause trouble. file: ddcb9440c3 check-in: [2c93b6c7f8] user: dgp branch: bug-3567063, size: 280793
2012-10-02
16:08
Fix for core bug yet to be named/numbered. file: 1ed12a5ba8 check-in: [ba0663c73f] user: dgp branch: dgp-stackedstdchan, size: 313708
2012-08-20
06:49
remove unnecessary struct names, which only pollute the "struct" namespace for te compiler. file: 9d32640092 check-in: [db442914c7] user: jan.nijtmans branch: jn-no-struct-names, size: 313495
2012-08-05
12:09
Final part of result generation conversion (modulo any minor blunders) file: 492d3118c0 check-in: [1fb35ca910] user: dkf branch: trunk, size: 313514
2012-07-24
20:20
Preserve the chanPtr so that script evaluation cannot invalidate it when we plan to use it again. file: ce150d9bcb check-in: [7f143c10c1] user: dgp branch: trunk, size: 312716
20:18
Preserve the chanPtr so that script evaluation cannot invalidate it when we plan to use it again. file: 782184b082 check-in: [ea138c4fb3] user: dgp branch: core-8-4-branch, size: 280720
20:14
Preserve the chanPtr so that script evaluation cannot invalidate it when we plan to use it again. file: dd0bb34d1b check-in: [14f2ba0d03] user: dgp branch: core-8-5-branch, size: 300706
2012-07-23
18:50
[Bug 3545365]: Never try a bg-flush on a dead channel, just like before 2011-08-17. file: 2620fbf904 check-in: [3bbd536102] user: ferrieux branch: trunk, size: 312663
2012-07-03
14:52
Factor out a number of common patterns of use of Tcl_DStringAppend. file: 3c37be5862 check-in: [4dd736c95f] user: dkf branch: trunk, size: 312586
2012-05-25
08:50
Factor out constant that must be the same in multiple places. Prompted by a conversation with Alexandre Ferrieux. file: 9f771071a6 check-in: [68547a2755] user: dkf branch: trunk, size: 312669
2012-05-09
19:09
* generic/tclIORChan.c [Bug 3522560]: Fixed the crash, enabled the test case. Modified [chan postevent] to properly inject the event(s) into the owner thread's event queue for execution in the correct context. Renamed the ForwardOpTo...Thread() function to match with our terminology. file: ccb46e3782 check-in: [32d93a8414] user: andreask branch: trunk, size: 312594
2012-05-07
16:36
Properly close nonblocking channels even when not flushing them. file: a8491a9037 check-in: [a219ffee40] user: ferrieux branch: trunk, size: 312593
2012-04-30
21:31
Fix a nesting bug in the message-passing protocol to Tcl_SetChannelError in one case. file: 4960996a04 check-in: [a13a83a7c2] user: ferrieux branch: bug-3522560, size: 313582
21:15
Explore enforcing the (implied) law that EAGAIN is forbidden for a blocking channel. Violation discovered is iocmd.tf-24.1[56] after TIP#398. Turns deadlock of these tests into frank failures. file: 152ca24f1b check-in: [89f82f5eaf] user: ferrieux branch: bug-3522560, size: 313580
2012-04-28
17:09
IMPLEMENTATION OF TIP#398 : Quickly Exit with Non-Blocking Blocked Channels file: da2a749e37 check-in: [efc6bbd2cb] user: ferrieux branch: trunk, size: 312592
17:03
Compat flag, test, and doc update. file: 667abd6d14 check-in: [96fb0e1328] user: ferrieux branch: tip-398-impl, size: 312592
2012-04-26
19:59
get rid of _ANSI_ARGS_ and CONST file: 2ee743e2c6 check-in: [ce95e51ad2] user: jan.nijtmans branch: trunk, size: 311817
2012-04-24
08:55
merge trunk file: 2c6cfc64ea check-in: [3a8c412e3e] user: ferrieux branch: tip-398-impl, size: 311578
2012-04-23
13:49
make some more internal tables const file: ca2009f9e9 check-in: [8f88d10716] user: jan.nijtmans branch: trunk, size: 311817
13:17
make some more internal tables const file: 9b51d83927 check-in: [7ac468debe] user: jan.nijtmans branch: core-8-5-branch, size: 300653
12:30
make some more internal tables const On cygwin, install dll's in /usr/bin, not in /usr/lib file: 74425dab3e check-in: [6de689d796] user: jan.nijtmans branch: core-8-4-branch, size: 280641
2012-03-22
08:04
Take two. Don't forget to apply all patches, even when the phone rings in between. file: dde6732457 check-in: [83c38b0c0d] user: ferrieux branch: tip-398-impl, size: 311572
07:33
Implement tip 398 : Quickly Exit with Non-Blocking Blocked Channels. This is simply a revert of the (C part of the) 1025712d5b commit of 2011-08-17. file: e58cc4f962 check-in: [f2a0a1891c] user: ferrieux branch: tip-398-impl, size: 311696
2012-03-07
21:59
start of a new attempt, building functionality in "channel" file: 29d9d58875 check-in: [a0ed010170] user: jan.nijtmans branch: bug-3466099, size: 301209
2011-09-21
20:54
[Bug 3412487]: Now short reads are allowed in synchronous fcopy, avoid mistaking them as nonblocking ones. file: ac36ea7ff1 check-in: [300934ee84] user: ferrieux branch: trunk, size: 311811
2011-08-19
19:07
3394654, 3393276 Revise FlushChannel() to account for the possibility that the ChanWrite() call might recycle the buffer out from under us. file: 34ab5ef273 check-in: [75186ea1b1] user: dgp branch: trunk, size: 311805
16:05
Preserve the chanPtr during FlushChannel so that channel drivers don't yank it away before we're done with it. file: b503ff00fc check-in: [9b67637699] user: dgp branch: trunk, size: 311767
2011-08-18
15:06
[Bug 3096275] Sync fcopy buffers input. file: 187e81ed40 check-in: [2b3b49886d] user: ferrieux branch: trunk, size: 311657
2011-08-17
20:35
[Bug 2946474] Consistently resume backgrounded flushes+closes when exiting. file: 4bdd4458b5 check-in: [1025712d5b] user: ferrieux branch: trunk, size: 311403
2011-08-05
15:23
Use Tcl_PrintfObj to generate more (complex) error messages. file: eb280af7ad check-in: [76495bbc29] user: dkf branch: trunk, size: 311288
2011-04-21
13:47
Make sure SetFooFromAny routines react reasonably when passed a NULL interp. file: f5794d9f4d check-in: [36b0307ba2] user: dgp branch: trunk, size: 311340
13:24
Make sure SetFooFromAny routines react reasonably when passed a NULL interp. file: 893409755c check-in: [0da07d5b1e] user: dgp branch: core-8-5-branch, size: 300647
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: b3fe853291 check-in: [5574bdd262] user: dkf branch: trunk, size: 311289
2011-03-10
09:31
MINOR: Formatting fixes, mainly to comments, so code better fits the style in the Engineering Manual. file: 4861f03a95 check-in: [5cb634a1c1] user: dkf branch: trunk, size: 311750
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: d2ef7c3ae8 check-in: [c64f310d38] user: dgp branch: trunk, size: 311716
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: 090bbe0d5e check-in: [79367df0f0] user: dgp branch: core-8-5-branch, size: 300596
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: 59e8837636 check-in: [90b4acd7bd] user: dgp branch: core-8-4-branch, size: 280635
2011-01-12
15:23
This commit is both no-NRE v2, implemented by subtracting the NRE pieces (*), and update to CVS trunk head of Wednesday Jan 5. (*) no-NRE v1 in the other branch was created in an additive manner from the point where 8.5 was branched from the trunk, by adding all the patches but those for NRE. file: 2d2cf61200 check-in: [2d93b1436c] user: andreask branch: activestate-nre-excised-variant-2-subtracted, size: 311795
2010-12-30
14:42
merge file: 71113ad050 check-in: [45d5c91eaf] user: dgp branch: dgp-refactor, size: 311787
2010-12-11
18:39
merge file: 57dcb486d8 check-in: [c291154f2c] user: kennykb branch: dogeen-assembler-branch, size: 311791
2010-12-10
17:16
[backport] Make sure [fcopy -size ... -command ...] always calls the callback asynchronously, even for size zero. file: 10d6d8894e check-in: [f1c09901d7] user: ferrieux branch: core-8-5-branch, size: 300673
17:00
Make sure [fcopy -size ... -command ...] always calls the callback asynchronously, even for size zero. file: 5cfbe24a53 check-in: [c65a69cfa4] user: ferrieux branch: trunk, size: 311788
2010-12-06
13:20
@1330 + jump interp, indexobj file: 638e915d72 check-in: [c08c831172] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 310882
12:33
@1300 file: 6a8c19cec1 check-in: [3f09e6a910] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 309713
2010-12-02
13:17
@1200 file: 7ab3da43ae check-in: [772aad65cb] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 309647
10:58
@1090 file: 93cc10dbaa check-in: [64d3140aa1] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 309231
2010-12-01
15:41
@999 file: f2814a5c2f check-in: [1ad7b941e2] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 307535
15:06
@940 file: 0039ae62d1 check-in: [fbf7360824] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 307120
14:48
@921 file: 10f90b2a6e check-in: [61b08bf693] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 307092
13:39
@864 + jumps file: ae688e38a9 check-in: [0dbcc4b3c6] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 307065
2010-11-29
13:51
@670 file: 451c7d986c check-in: [2435a4366f] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 306790
2010-11-23
15:23
Next @611, and jumping tclGetDate.yyacc grammar. file: 20a058d2c2 check-in: [b277d95385] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 306774
14:27
Jumps of win/ files. Fixed missing patches to configure. Jumped configure.in and tcl.m4. Also @578 file: f196b366d4 check-in: [1c930c462b] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 306859
11:38
Next @500. file: c755d7310f check-in: [5365d7ae02] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 299843
10:24
Next @411 file: 0e0737deb6 check-in: [769955448f] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 296963
2010-11-22
16:07
Next @380. OO Stacktraces broken. file: cceda6ba78 check-in: [1713113dd4] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 297094
2010-03-30
08:45
Merge from HEAD to rmax-ipv6-branch file: 33fec4a973 check-in: [54b695423d] user: rmax branch: rmax-ipv6-branch, size: 310875
2010-03-20
18:00
merge updates file: 2ec2519485 check-in: [c65700492b] user: dgp branch: dgp-refactor, size: 310874
17:53
* generic/tclIO.c (CopyData): Allow the total number of bytes copied by [fcopy] to exceed 2GB. Can happen when no -size parameter given. file: 957633272b check-in: [c6cdb88f0b] user: dkf branch: core-8-5-branch, size: 299755
17:49
Missed a spot. file: 26b6884833 check-in: [eb14061610] user: dkf branch: trunk, size: 310870
15:58
merge updates file: 2b4e2c39f6 check-in: [f275ac41be] user: dgp branch: dgp-refactor, size: 310870
15:39
Allow [fcopy] to move more than 2GB per call. Frederic Bonnet identified issue. file: 0d6b0f00f1 check-in: [a2e969549f] user: dkf branch: trunk, size: 310866
2010-03-17
17:26
merge updates from HEAD file: f8194ee4b7 check-in: [296b59ea58] user: dgp branch: dgp-refactor, size: 310353
16:35
* generic/tclIORTrans.c (ReflectInput, ReflectOutput, ReflectSeekWide): [Bug 2921116]: Added missing TclEventuallyFree calls for preserved ReflectedTransform* structures. Reworked ReflectInput to preserve the structure for its whole life, not only in InvokeTclMethod. * generic/tclIO.c (Tcl_GetsObj): [Bug 2921116]: Regenerate topChan, may have been changed by a self-modifying transformation. * tests/ioTrans/test (iortrans-4.8, iortrans-4.9, iortrans-5.11, iortrans-7.4, iortrans-8.3): New test cases. file: 1fd23f1482 check-in: [366cd619ab] user: andreas_kupries branch: trunk, size: 310361
2010-02-25
21:53
merge updates from HEAD file: 58ada3a5d9 check-in: [1b11388844] user: dgp branch: dgp-refactor, size: 309705
2010-02-24
10:45
More tidying up (whitespace, spelling, useless parentheses, useless casts) file: 41ee65419e check-in: [511d94dd87] user: dkf branch: trunk, size: 309701
2010-01-19
14:23
merge updates from HEAD file: c11f51e901 check-in: [907e364180] user: dgp branch: dgp-refactor, size: 309639
2010-01-18
22:20
* generic/tclIO.c (CreateScriptRecord): [Bug 2918110]: Initialize the EventScriptRecord (esPtr) fully before handing it to Tcl_CreateChannelHandler for registration. Otherwise a reflected channel calling 'chan postevent' (== Tcl_NotifyChannel) in its 'watchProc' will cause the function 'TclChannelEventScriptInvoker' to be run on an uninitialized structure. file: b41d3732f5 check-in: [f1ca567e92] user: andreas_kupries branch: core-8-5-branch, size: 299743
22:19
* generic/tclIO.c (CreateScriptRecord): [Bug 2918110]: Initialize the EventScriptRecord (esPtr) fully before handing it to Tcl_CreateChannelHandler for registration. Otherwise a reflected channel calling 'chan postevent' (== Tcl_NotifyChannel) in its 'watchProc' will cause the function 'TclChannelEventScriptInvoker' to be run on an uninitialized structure. file: 20d02eaa38 check-in: [1d91b69bab] user: andreas_kupries branch: trunk, size: 309647
2009-12-10
00:30
merge updates from HEAD file: a2af4e821b check-in: [8b033f7215] user: dgp branch: dgp-refactor, size: 309223
2009-12-09
23:26
Killed c99/c++ comments left in by the IO patch. file: 5770e4fc59 check-in: [b8d9093b8d] user: andreas_kupries branch: trunk, size: 309231
23:03
* generic/tclIO.c: [Bug 2901998]: Applied Alexandre Ferrieux's patch fixing the inconsistent buffered I/O. Tcl's I/O now flushes buffered output before reading, discards buffered input before writing, etc. file: ea0e91257a check-in: [5af0d249de] user: andreas_kupries branch: trunk, size: 309350
2009-11-19
16:51
merge updates from HEAD file: cb474ec604 check-in: [7aa1b44845] user: dgp branch: dgp-refactor, size: 308390
2009-11-18
22:41
Fix [Bug 2849797]: channel name inconsistencies as suggested by DKF minor *** POTENTIAL INCOMPATIBILITY *** because Tcl_CreateChannel() and its derivatives, now sometimes ignore their "chanName" argument. file: 790bc9f328 check-in: [c0b94338ed] user: nijtmans branch: trunk, size: 308391
2009-11-12
18:16
merge updates from HEAD file: d8c1ad302d check-in: [6e00f30a7c] user: dgp branch: dgp-refactor, size: 308218
17:41
* generic/tclIO.c (CopyData): [Bug 2895565]. Dropped bogosity * tests/io.test: which used the number of _written_ bytes or character to update the counters for the read bytes/characters. New test io-53.11. This is a backward port from the 8.5 branch. file: 0a87be1d0b check-in: [dd31314594] user: andreas_kupries branch: core-8-4-branch, size: 280718
17:25
* generic/tclIO.c (CopyData): [Bug 2895565]. Dropped bogosity * tests/io.test: which used the number of _written_ bytes or character to update the counters for the read bytes/characters. New test io-53.11. This is a forward port from the 8.5 branch. file: 1b573a0227 check-in: [bee5fce253] user: andreas_kupries branch: trunk, size: 308226
17:03
* generic/tclIO.c (CopyData): [Bug 2895565]. Dropped bogosity which used the number of _written_ bytes or character to update the counters for the read bytes/characters. See last entry for the test case. file: 19be989079 check-in: [baab8a7a17] user: andreas_kupries branch: core-8-5-branch, size: 299327
2009-11-11
14:27
merge updates from HEAD file: cb3c948f48 check-in: [ed5b810465] user: dgp branch: dgp-refactor, size: 307809
00:04
Backported fix for [Bug 2888099] (close discards ENOSPC error) by saving the errno from the first of two FlushChannel()s. Uneasy to test; might need specific channel drivers. Four-hands with aku. file: dfa5d01fd0 check-in: [ee83aeb170] user: ferrieux branch: core-8-5-branch, size: 298906
2009-11-10
23:50
Fix [Bug 2888099] (close discards ENOSPC error) by saving the errno from the first of two FlushChannel()s. Uneasy to test; might need specific channel drivers. Four-hands with aku. file: f814015f14 check-in: [c4da5b0446] user: ferrieux branch: trunk, size: 307810
21:59
merge updates from HEAD file: 8f996662bc check-in: [833ca3a39c] user: dgp branch: dgp-refactor, size: 307487
2009-11-09
13:47
Some small bits of tidying up. file: 0f19717bd6 check-in: [35e9bea66e] user: dkf branch: trunk, size: 307483
2009-10-23
19:40
merge updates from HEAD file: 527a8fdc62 check-in: [e03987998b] user: dgp branch: dgp-refactor, size: 307527
19:09
* generic/tclIO.c (FlushChannel): Skip OutputProc for low-level 0-length writes. When closing pipes which have already been closed not skipping leads to spurious SIG_PIPE signals. Reported by Mikhail Teterin <[email protected]>. file: ad63d1601e check-in: [6a13560e76] user: andreas_kupries branch: trunk, size: 307535
19:09
* generic/tclIO.c (FlushChannel): Skip OutputProc for low-level 0-length writes. When closing pipes which have already been closed not skipping leads to spurious SIG_PIPE signals. Reported by Mikhail Teterin <[email protected]>. file: 308798c6e9 check-in: [a63650e781] user: andreas_kupries branch: core-8-5-branch, size: 298632
19:08
* generic/tclIO.c (FlushChannel): Skip OutputProc for low-level 0-length writes. When closing pipes which have already been closed not skipping leads to spurious SIG_PIPE signals. Reported by Mikhail Teterin <[email protected]>. file: 42f18ef8fe check-in: [c8af1f5edb] user: andreas_kupries branch: core-8-4-branch, size: 280288
2009-10-19
22:13
merge updates from HEAD file: e53955cca0 check-in: [8be0506f4c] user: dgp branch: dgp-refactor, size: 307464
22:00
* generic/tclIO.c: Revised ReadChars and FilterInputBytes routines to permit reads to continue up to the string limits of Tcl values. Before revisions, large read attempts could panic when as little as half the limiting value length was reached. [Patch 2107634] Thanks to Sean Morrison and Bob Parker for their roles in the fix. file: be45a42630 check-in: [8e6e2b93ab] user: dgp branch: trunk, size: 307460
21:59
* generic/tclIO.c: Revised ReadChars and FilterInputBytes routines to permit reads to continue up to the string limits of Tcl values. Before revisions, large read attempts could panic when as little as half the limiting value length was reached. [Patch 2107634] Thanks to Sean Morrison and Bob Parker for their roles in the fix. file: 56aa7378b5 check-in: [cdf0022092] user: dgp branch: core-8-5-branch, size: 298564
2009-09-30
06:07
merge updates from HEAD file: 1ad4583bc0 check-in: [3b4e6b13b9] user: dgp branch: dgp-refactor, size: 307112
03:11
* generic/tclDictObj.c: Updated freeIntRepProc routines so * generic/tclExecute.c: that they set the typePtr field to * generic/tclIO.c: NULL so that the Tcl_Obj is not left * generic/tclIndexObj.c: in an inconsistent state. * generic/tclInt.h: [Bug 2857044] * generic/tclListObj.c: * generic/tclNamesp.c: * generic/tclOOCall.c: * generic/tclObj.c: * generic/tclPathObj.c: * generic/tclProc.c: * generic/tclRegexp.c: * generic/tclStringObj.c: file: 1c85cc8e3c check-in: [c712d7d7bb] user: dgp branch: trunk, size: 307108
2009-09-07
16:39
merge updates from HEAD file: 97fb039fba check-in: [8c0a6a5799] user: dgp branch: dgp-refactor, size: 307084
07:28
* generic/tclExecute.c: fix potential uninitialized variable use and * generic/tclFCmd.c: null dereference flagged by clang static * generic/tclProc.c: analyzer. * generic/tclTimer.c: * generic/tclUtf.c: * generic/tclExecute.c: silence false positives from clang static * generic/tclIO.c: analyzer about potential null dereference. * generic/tclScan.c: * generic/tclCompExpr.c: file: 0e66ca44ae check-in: [e93f957325] user: das branch: trunk, size: 307080
2009-07-24
16:51
* generic/tclIO.c (Tcl_GetChannelHandle): [Bug 2826248]: Do not crash * generic/tclPipe.c (FileForRedirect): for getHandleProc == NULL, this is allowed. Provide a nice error message in the bypass area. Updated caller to check the bypass for a mesage. Bug reported by Andy Sonnenburg <[email protected]>. Backported from CVS head. file: 89bd8d6030 check-in: [62c8e5320a] user: andreas_kupries branch: core-8-5-branch, size: 298224
13:16
merge updates from HEAD file: 4e893ef047 check-in: [6beb79f8e9] user: dgp branch: dgp-refactor, size: 307057
2009-07-23
22:49
* generic/tclIO.c (Tcl_GetChannelHandle): Do not crash for * generic/tclPipe.c (FileForRedirect): getHandleProc == NULL, this is allowed. Provide a nice error message in the bypass area. Updated caller to check the bypass for a mesage. This fixes the bug [Bug 2826248] reported by Andy Sonnenburg <[email protected]> file: fa33347cdb check-in: [9039eeb584] user: andreas_kupries branch: trunk, size: 307065
2009-02-11
17:27
merge updates from HEAD file: 3b00264bc8 check-in: [f07460d448] user: dgp branch: dgp-refactor, size: 306782
2009-02-10
22:49
- eliminate some unnessary type casts - some internal const decorations - spacing file: 05b1473b05 check-in: [160bcb1152] user: nijtmans branch: trunk, size: 306783
2009-01-09
14:17
merge updates from HEAD file: cf64d7d542 check-in: [02f7c5c705] user: dgp branch: dgp-refactor, size: 306766
11:21
Style fixes (unfouling whitespace, sorting comments, removing useless casts, etc.) file: e92bb980f2 check-in: [cd3c38f00a] user: dkf branch: trunk, size: 306762
2008-12-19
03:37
merge updates from HEAD file: 332d7b4034 check-in: [319f77c794] user: dgp branch: dgp-refactor, size: 306851
2008-12-18
23:48
* generic/tclIO.c (Tcl_CloseEx,CloseWrite,CloseChannelPart,ChanCloseHalf): Rewrite the half-close to properly flush the channel, like is done for a full close, going through FlushChannel, and using the flag BG_FLUSH_SCHEDULED (async flush during close). New functions CloseWrite, CloseChannelPart, new flag CHANNEL_CLOSEDWRITE. * tests/chanio.test (chanio-28.[67]): Reactivated these tests. Replaced tclsh -> [interpreter] to get correct executable for the pipe process, and added after cancel to kill the fail timers when we are done. Removed the explicits calls to [flush], now that [close] handles this correctly. file: 7d4e5a0140 check-in: [2cb6ab45d5] user: andreas_kupries branch: trunk, size: 306859
18:18
merge updates from HEAD file: c4b2c22763 check-in: [ac8dad98e0] user: dgp branch: dgp-refactor, size: 300198
16:52
Add missing flush for half-close of the write side file: c1cc541cfc check-in: [9abef88cd5] user: ferrieux branch: trunk, size: 300199
04:36
merge updates from HEAD file: 9af0fdbee0 check-in: [75c2ca517b] user: dgp branch: dgp-refactor, size: 299835
01:14
TIP #332 IMPLEMENTATION - Half-Close for Bidirectional Channels file: cc4ff4d78f check-in: [d4d9fb3168] user: ferrieux branch: trunk, size: 299836
2008-12-12
02:41
merge updates from HEAD file: 14022360ea check-in: [ffe56e444b] user: dgp branch: dgp-refactor, size: 296749
2008-12-11
17:30
* generic/tclIO.c (SetChannelFromAny and related): Modified the * tests/io.test: internal representation of the tclChannelType to contain not only the ChannelState pointer, but also a reference to the interpreter it was made in. Invalidate and recompute the internal representation when it is used in a different interpreter (Like cmdName intrep's). Added testcase. [Bug 2407783]. file: 6088c97ee0 check-in: [4698543527] user: andreas_kupries branch: trunk, size: 296757
17:27
* generic/tclIO.c (SetChannelFromAny and related): Modified the * tests/io.test: internal representation of the tclChannelType to contain not only the ChannelState pointer, but also a reference to the interpreter it was made in. Invalidate and recompute the internal representation when it is used in a different interpreter (Like cmdName intrep's). Added testcase. [Bug 2407783]. file: 81884892c8 check-in: [cfad9b09d7] user: andreas_kupries branch: core-8-5-branch, size: 297949
2008-12-10
13:51
merge updates from HEAD file: 831f76b7ae check-in: [17d1c7c4c7] user: dgp branch: dgp-refactor, size: 296200
2008-12-09
20:16
TIP #337 IMPLEMENTATION * doc/BackgdErr.3: Converted internal routine * doc/interp.n: TclBackgroundException() into public routine * generic/tcl.decls: Tcl_BackgroundException(). * generic/tclEvent.c: * generic/tclInt.decls: * generic/tclDecls.h: make genstubs * generic/tclIntDecls.h: * generic/tclStubInit.c: * generic/tclIO.c: Update callers. * generic/tclIOCmd.c: * generic/tclInterp.c: * generic/tclTimer.c: *** POTENTIAL INCOMPATIBILITY only for extensions using the converted internal routine *** file: 9d9bf74d2f check-in: [2c2b2f27f3] user: dgp branch: trunk, size: 296196
14:09
A bit more readability refactoring. file: ebe6931b84 check-in: [579d74d29f] user: dkf branch: trunk, size: 296194
2008-12-02
18:23
* generic/tclIO.c (TclFinalizeIOSubsystem): Replaced Alexandre Ferrieux's first patch for [Bug 2270477] with a gentler version, also supplied by him. file: f22f1a0df7 check-in: [485f324427] user: andreas_kupries branch: core-8-5-branch, size: 297384
18:23
* generic/tclIO.c (TclFinalizeIOSubsystem): Replaced Alexandre Ferrieux's first patch for [Bug 2270477] with a gentler version, also supplied by him. file: f92400c5a4 check-in: [0510216fea] user: andreas_kupries branch: trunk, size: 296963
2008-12-01
21:48
* generic/tclIO.c (TclFinalizeIOSubsystem): Revised latest commit to something that doesn't crash the test suite. file: 3660c6043e check-in: [f0ac8ebbfa] user: dgp branch: core-8-4-branch, size: 280227
2008-11-27
05:58
merge updates from HEAD file: 345105b114 check-in: [d491254068] user: dgp branch: dgp-refactor, size: 296925
2008-11-25
23:19
Eliminate 3 calls to Tcl_SetResult, as examples how it should have been done. purpose: contribute in the TIP #340 discussion. file: 63f8152869 check-in: [8956424338] user: nijtmans branch: trunk, size: 296926
22:18
* generic/tclIO.c (TclFinalizeIOSubsystem): Applied backport of Alexandre Ferrieux's patch for [Bug 2270477] to prevent infinite looping during finalization of channels not bound to interpreters. file: b8782a92fa check-in: [57ca0f31d3] user: andreas_kupries branch: core-8-4-branch, size: 280209
22:16
* generic/tclIO.c (TclFinalizeIOSubsystem): Applied Alexandre Ferrieux's patch for [Bug 2270477] to prevent infinite looping during finalization of channels not bound to interpreters. file: 23311823e9 check-in: [5b28ad3f61] user: andreas_kupries branch: core-8-5-branch, size: 297354
22:13
* generic/tclIO.c (TclFinalizeIOSubsystem): Applied Alexandre Ferrieux's patch for [Bug 2270477] to prevent infinite looping during finalization of channels not bound to interpreters. file: 638b2898ab check-in: [9fa4a72d8a] user: andreas_kupries branch: trunk, size: 297101
2008-11-24
04:43
merge updates from HEAD file: 55ea4f7dbe check-in: [fbcc3c2aee] user: dgp branch: dgp-refactor, size: 297090
2008-11-23
19:29
* generic/tclIO.c: Backport of fix for [Bug 2333466]. file: 2ca4bca691 check-in: [845be4dce9] user: andreas_kupries branch: core-8-5-branch, size: 297351
19:26
* generic/tclIO.c: Backport of fix for [Bug 2333466]. file: 5554469f09 check-in: [ba4fa202be] user: andreas_kupries branch: core-8-4-branch, size: 280206
18:05
Fix IsChannelExisting name comparison [Bug 2333466] file: ea3a322b9f check-in: [23d8e42096] user: ferrieux branch: trunk, size: 297091
2008-11-10
02:18
merge updates from HEAD file: bb188dd359 check-in: [4a9c1325dc] user: dgp branch: dgp-refactor, size: 297086
2008-11-06
21:47
add "-Wno-implicit-int" for gcc, as on UNIX eliminate an 'array index out of bounds' warning on HP-UX' file: 9ad50637b3 check-in: [918ba31cc4] user: nijtmans branch: trunk, size: 297087
2008-10-26
18:34
Style improvements - invoking callbacks without visual junk. file: eb93d101ba check-in: [a1a8afc25d] user: dkf branch: trunk, size: 297078
2008-10-17
20:52
merge updates from HEAD file: b44b302414 check-in: [d93600ad8e] user: dgp branch: dgp-refactor, size: 297274
2008-10-16
22:34
Add "const" to many internal const tables. No functional or API change. file: 948f0ccd98 check-in: [f03d2e2d83] user: nijtmans branch: trunk, size: 297275
2008-10-11
03:37
merge updates from HEAD file: a20aac6ddc check-in: [707fc4e9cf] user: dgp branch: dgp-refactor, size: 297268
2008-10-04
12:33
* doc/ChnlStack.3: CONSTified the typePtr argument * doc/CrtChannel.3: of Tcl_CreateChannel and Tcl_StackChannel * generic/tcl.decls and the return value of Tcl_GetChannelType * generic/tcl.h * generic/tclIO.h * generic/tclIO.c * ChangeLog * generic/tclDecls.h: regenerated This change complies with TIP #27. file: b03577f024 check-in: [1fb6ccc45a] user: nijtmans branch: trunk, size: 297269
2008-06-25
15:56
merge updates from 8.5 branch file: 32b695bab5 check-in: [affd52009d] user: dgp branch: core-stabilizer-branch, size: 297245
2008-05-31
21:01
merge updates from HEAD file: a49ca16854 check-in: [6f324d01e1] user: dgp branch: dgp-refactor, size: 297244
2008-05-23
21:12
* win/tclWinChan.c (FileWideSeekProc): Accepted a patch by Alexandre Ferrieux <[email protected]> to fix the [Bug 1965787]. 'tell' now works for locations > 2 GB as well instead of going negative. * generic/tclIO.c (Tcl_SetChannelBufferSize): Accepted a patch by * tests/io.test: Alexandre Ferrieux <[email protected]> to fix the [Bug 1969953]. Buffersize outside of the supported range are now clipped to nearest boundary instead of ignored. file: 844f5476d8 check-in: [6f5350cff4] user: andreas_kupries branch: core-8-4-branch, size: 280115
21:10
* win/tclWinChan.c (FileWideSeekProc): Accepted a patch by Alexandre Ferrieux <[email protected]> to fix the [Bug 1965787]. 'tell' now works for locations > 2 GB as well instead of going negative. * generic/tclIO.c (Tcl_SetChannelBufferSize): Accepted a patch by * tests/io.test: Alexandre Ferrieux <[email protected]> * tests/chanio.test: to fix the [Bug 1969953]. Buffersize outside of the supported range are now clipped to nearest boundary instead of ignored. file: fce6a28734 check-in: [ade419178b] user: andreas_kupries branch: core-8-5-branch, size: 297256
21:00
* win/tclWinChan.c (FileWideSeekProc): Accepted a patch by Alexandre Ferrieux <[email protected]> to fix the [Bug 1965787]. 'tell' now works for locations > 2 GB as well instead of going negative. * generic/tclIO.c (Tcl_SetChannelBufferSize): Accepted a patch by * tests/io.test: Alexandre Ferrieux <[email protected]> * tests/chanio.test: to fix the [Bug 1969953]. Buffersize outside of the supported range are now clipped to nearest boundary instead of ignored. file: 73d1073dd0 check-in: [f337d855cc] user: andreas_kupries branch: trunk, size: 297252
2008-04-15
19:19
merge updates from HEAD file: 8c0eb5c349 check-in: [dc626ebb84] user: dgp branch: dgp-refactor, size: 297217
18:34
* generic/tclIO.c (CopyData): Applied another patch by Alexandre * io.test (io-53.8a): Ferrieux <[email protected]>, * chanio.test (chan-io-53.8a): to shift EOF handling to the async part of the command if a callback is specified, should the channel be at EOF already when fcopy is called. Testcase by myself. file: eee9a34ac4 check-in: [f8664c0638] user: andreas_kupries branch: trunk, size: 297225
18:32
* generic/tclIO.c (CopyData): Applied another patch by Alexandre * io.test (io-53.8a): Ferrieux <[email protected]>, * chanio.test (chan-io-53.8a): to shift EOF handling to the async part of the command if a callback is specified, should the channel be at EOF already when fcopy is called. Testcase by myself. file: fee58a2421 check-in: [25f469ce77] user: andreas_kupries branch: core-8-5-branch, size: 297229
18:31
* generic/tclIO.c (CopyData): Applied another patch by Alexandre * io.test (io-53.8a): Ferrieux <[email protected]>, to shift EOF handling to the async part of the command if a callback is specified, should the channel be at EOF already when fcopy is called. Testcase by myself. file: edaaac9041 check-in: [ca26b071d8] user: andreas_kupries branch: core-8-4-branch, size: 280133
2008-04-08
13:18
merge updates from HEAD file: 759c321d43 check-in: [e6bf431352] user: dgp branch: dgp-refactor, size: 297091
2008-04-07
22:53
* tests/io.test (io-53.10): Testcase for bi-directionaly fcopy. * tests/chanio.test: * generic/tclIO.c: Additional changes to data structures for fcopy * generic/tclIO.h: and channels to perform proper cleanup in case of a channel having two background copy operations running as is now possible. file: 2df500dca3 check-in: [8b118596fb] user: andreas_kupries branch: trunk, size: 297099
22:33
* tests/io.test (io-53.10): Testcase for bi-directionaly fcopy. * tests/chanio.test: * generic/tclIO.c: Additional changes to data structures for fcopy * generic/tclIO.h: and channels to perform proper cleanup in case of a channel having two background copy operations running as is now possible. file: cd88380865 check-in: [a9e6f2b7cb] user: andreas_kupries branch: core-8-5-branch, size: 297103
22:17
* tests/io.test (io-53.10): Testcase for bi-directionaly fcopy. * generic/tclIO.c: Additional changes to data structures for fcopy * generic/tclIO.h: and channels to perform proper cleanup in case of a channel having two background copy operations running as is now possible. file: 3c9093fdc0 check-in: [804943284a] user: andreas_kupries branch: core-8-4-branch, size: 279999
19:42
* generic/tclIO.c (BUSY_STATE, CheckChannelErrors, TclCopyChannel): New macro, and the places using it. This change allows for bi-directional fcopy on channels. Thanks to Alexandre Ferrieux <[email protected]> for the patch. file: b7f8984b35 check-in: [4bc02d762e] user: andreas_kupries branch: trunk, size: 296728
19:41
* generic/tclIO.c (BUSY_STATE, CheckChannelErrors, TclCopyChannel): New macro, and the places using it. This change allows for bi-directional fcopy on channels. Thanks to Alexandre Ferrieux <[email protected]> for the patch. file: 679511aafa check-in: [27fdbe7ec3] user: andreas_kupries branch: core-8-5-branch, size: 296732
19:40
* generic/tclIO.c (BUSY_STATE, CheckChannelErrors, TclCopyChannel): New macro, and the places using it. This change allows for bi-directional fcopy on channels. Thanks to Alexandre Ferrieux <[email protected]> for the patch. * tests/io.test (io-53.9): Made test cleanup robust against the possibility of slow process shutdown on Windows. Backported from Kevin Kenny's change to the same test on the 8.5 and head branches. file: ef564410d7 check-in: [7e674627c1] user: andreas_kupries branch: core-8-4-branch, size: 279636
2008-04-04
04:40
merge updates from HEAD file: b76a4dae35 check-in: [40d856c29f] user: dgp branch: dgp-refactor, size: 296482
2008-04-03
18:06
* generic/tclIO.c (CopyData): Applied patch [Bug 1932639] to * tests/io.test: prevent fcopy from calling -command synchronously the first time. Thanks to Alexandre Ferrieux <[email protected]> for report and patch. file: 40035a7e6c check-in: [cdd0c6626a] user: andreas_kupries branch: core-8-4-branch, size: 279398
18:06
* generic/tclIO.c (CopyData): Applied patch [Bug 1932639] to * tests/io.test: prevent fcopy from calling -command synchronously * tests/chanio.test: the first time. Thanks to Alexandre Ferrieux <[email protected]> for report and patch. file: 3642fc28b5 check-in: [b9d8285147] user: andreas_kupries branch: core-8-5-branch, size: 296494
18:05
* generic/tclIO.c (CopyData): Applied patch [Bug 1932639] to * tests/io.test: prevent fcopy from calling -command synchronously * tests/chanio.test: the first time. Thanks to Alexandre Ferrieux <[email protected]> for report and patch. file: eeffb4da00 check-in: [d72429b721] user: andreas_kupries branch: trunk, size: 296490
2008-04-02
20:27
* generic/tclIO.c (CopyData): Applied patch for the fcopy problem [Bug 780533], with many thanks to Alexandre Ferrieux <[email protected]> for tracking it down and providing a solution. Still have to convert his test script into a proper test case. file: dec7019822 check-in: [854fdab305] user: andreas_kupries branch: core-8-4-branch, size: 279117
20:27
* generic/tclIO.c (CopyData): Applied patch for the fcopy problem [Bug 780533], with many thanks to Alexandre Ferrieux <[email protected]> for tracking it down and providing a solution. Still have to convert his test script into a proper test case. file: 41b2ece85e check-in: [89bcb90b51] user: andreas_kupries branch: core-8-5-branch, size: 296240
20:26
* generic/tclIO.c (CopyData): Applied patch for the fcopy problem [Bug 780533], with many thanks to Alexandre Ferrieux <[email protected]> for tracking it down and providing a solution. Still have to convert his test script into a proper test case. file: 8e67928a6f check-in: [d2651aebcd] user: andreas_kupries branch: trunk, size: 296236
2008-01-23
16:42
merge updates from HEAD file: 14c74349cf check-in: [013cce9562] user: dgp branch: core-stabilizer-branch, size: 296204
2008-01-22
14:49
merge updates from HEAD file: ef5fe5d3c4 check-in: [d2f9709393] user: dgp branch: dgp-refactor, size: 296204
2008-01-20
21:16
* generic/tclIO.c (TclGetsObjBinary): operate on topmost channel. [Bug 1869405] (Ficicchia) file: 417f3bc098 check-in: [ac70196d3c] user: hobbs branch: trunk, size: 296202
2007-12-13
15:22
merge stable branch onto HEAD file: 20e78a2610 check-in: [d1f7550cd9] user: dgp branch: trunk, size: 296081
2007-12-10
19:04
merge updates from HEAD file: 9f5aedbcbe check-in: [f1b9af4a21] user: dgp branch: dgp-refactor, size: 296085
18:32
merge updates from HEAD file: 6b96f4455f check-in: [efd7dcda90] user: dgp branch: core-stabilizer-branch, size: 296085
15:16
make tclChannelType static (fix 'make checkstubs') file: 3911dc3a5e check-in: [69c392c373] user: das branch: trunk, size: 296081
2007-12-09
22:24
* tests/io.test, tests/chanio.test (io-73.1): Make sure to invalidate * generic/tclIO.c (SetChannelFromAny): internal rep only after validating channel rep. [Bug 1847044] file: 7e8442ab8b check-in: [0404d916bd] user: hobbs branch: trunk, size: 296076
2007-12-06
07:11
merge updates from HEAD file: 49a1a32e43 check-in: [304e9bdd17] user: dgp branch: dgp-refactor, size: 295940
07:08
merge updates from HEAD file: 28ad3e3f78 check-in: [7b24711edb] user: dgp branch: core-stabilizer-branch, size: 295940
06:51
merge updates from HEAD file: 38befa9e19 check-in: [6f3a8a0d9e] user: dgp branch: dgp-refactor, size: 289389
2007-12-05
21:47
* generic/tclIO.h: Create Tcl_Obj for Tcl channels to reduce * generic/tclIO.c: overhead in lookup by Tcl_GetChannel. New * generic/tclIOCmd.c: TclGetChannelFromObj for internal use. * generic/tclIO.c (WriteBytes, WriteChars): add opt check to avoid EOL translation when not linebuffered or using lf. [Bug 1845092] file: 791f0a733b check-in: [b780154df6] user: hobbs branch: trunk, size: 295938
2007-11-28
20:30
merge updates from HEAD file: a440d9248d check-in: [b82595df55] user: dgp branch: core-stabilizer-branch, size: 289389
16:04
* generic/tclIO.c: Simplify test and improve accuracy of error message in latest changes. file: 00bea522f1 check-in: [afbe8ffbca] user: dgp branch: trunk, size: 289385
01:11
-eofchar must support no eofchar. file: e32b3b3746 check-in: [3e6026e637] user: patthoyts branch: trunk, size: 289424
2007-11-27
19:48
* doc/chan.n: "Fix" the limitation on channel -eofchar * doc/fconfigure.n: values to single byte characters by documenting * generic/tclIO.c: it and making it fail loudly. Thanks to * tests/chan.test: Stuart Cassoff for contributing the fix. [Bug 800753] file: 84ed1743d6 check-in: [847f162f29] user: dgp branch: trunk, size: 289427
2007-11-21
06:30
Merge updates from 8.5b3 release file: b79f4b5a0e check-in: [c60ad186f4] user: dgp branch: core-stabilizer-branch, size: 289263
2007-11-19
14:04
Simplifications (fewer casts, less manual bit twiddling) file: 3e0c0bedbe check-in: [703d0677c7] user: dkf branch: trunk, size: 289259
2007-11-12
20:40
merge updates from HEAD file: 4bc14d4129 check-in: [27f428842c] user: dgp branch: dgp-refactor, size: 289725
19:18
merge updates from HEAD file: 551d3fee51 check-in: [72c5ac9502] user: dgp branch: core-stabilizer-branch, size: 289725
2007-11-11
19:32
[Patch 1830038]: Increased usage of macros to detect and take advantage of objTypes. file: 040b99ef8f check-in: [11e8f31512] user: msofer branch: trunk, size: 289724
2007-11-08
07:10
fix (unsigned char*) vs. (char*) warnings file: aef724e5bd check-in: [c264c409d6] user: das branch: trunk, size: 289729
2007-11-07
23:52
(DoWriteChars): special case for 1-byte channel write. file: 2d6a20bbef check-in: [260c9d8931] user: hobbs branch: trunk, size: 289714
19:18
* generic/tclIO.c (TclGetsObjBinary): add an efficient binary path for [gets]. file: 22532df79e check-in: [d85436e72b] user: hobbs branch: trunk, size: 289476
2007-09-17
15:10
merge updates from HEAD file: 32c13d83fb check-in: [998f41c78b] user: dgp branch: dgp-refactor, size: 282329
15:03
merge updates from HEAD file: e216f04c7a check-in: [f5355cd31e] user: dgp branch: core-stabilizer-branch, size: 282329
12:07
(CopyData): avoid leaking msg and errObj (if interp == NULL) file: 34bdac51db check-in: [ef19734d0e] user: das branch: trunk, size: 282325
2007-09-07
03:15
merge updates from HEAD file: 9f06ba14d1 check-in: [2c46d786c6] user: dgp branch: dgp-refactor, size: 282171
2007-09-06
18:20
merge updates from HEAD file: f98c59cb11 check-in: [e581a62da3] user: dgp branch: core-stabilizer-branch, size: 282171
18:13
* generic/tclInt.decls: New internal routine TclBackgroundException() * generic/tclEvent.c: that for the first time permits non-TCL_ERROR exceptions to trigger [interp bgerror] handling. Closes a gap in TIP 221. When falling back to [bgerror] (which is designed only to handle TCL_ERROR), convert exceptions into errors complaining about the exception. * generic/tclInterp.c: Convert Tcl_BackgroundError() callers to call * generic/tclIO.c: TclBackgroundException(). * generic/tclIOCmd.c: * generic/tclTimer.c: * generic/tclIntDecls.h: make genstubs * generic/tclStubInit.c: file: 4792e9f475 check-in: [d487b6177f] user: dgp branch: trunk, size: 282167
2007-07-03
02:54
merge updates from HEAD file: 5701caadd5 check-in: [099b3f38d7] user: dgp branch: dgp-refactor, size: 282126
02:28
merge updates from HEAD file: 1575f7a9e6 check-in: [ee65fc56de] user: dgp branch: core-stabilizer-branch, size: 282126
2007-07-02
19:18
* generic/tclIO.c: Removed dead code. * unix/tclUnixChan.c: file: fe1d6a784e check-in: [f1679dd963] user: dgp branch: trunk, size: 282122
2007-05-29
14:21
merge updates from HEAD file: aed93cb3e7 check-in: [404470c2db] user: dgp branch: dgp-refactor, size: 282373
2007-05-24
19:31
* generic/tclIO.c: Backport memleak fix in TclFinalizeIOSubsystem. file: 67c2b6d2f3 check-in: [bb3dfd4fa3] user: dgp branch: core-8-4-branch, size: 279081
2007-05-04
14:59
* tests/encoding.test: Modified so that encoding tests happen in a private namespace, to avoid polluting the global one. This problem was discovered when running the test suite '-singleproc 1 -skip exec.test' because the 'path' variable in encoding.test conflicted with the one in io.test. * tests/io.test: Made more of the working variables private to the namespace. file: ded9e0d765 check-in: [9cc60b0ea4] user: kennykb branch: trunk, size: 282373
2007-05-01
22:43
* generic/tclIO.c (DeleteChannelTable): Made changes so that DeleteChannelTable tries to close all open channels, not just the first. [Bug 1710285] * generic/tclThread.c (TclFinalizeSynchronization): Make sure that TSD blocks get freed on non-threaded builds. [Bug 1710825] file: 5d0332ff3b check-in: [41c23d142b] user: kennykb branch: trunk, size: 282367
2007-04-30
21:40
* generic/tclIO.c (FixLevelCode): Corrected reference count mismanagement of newlevel, newcode. Changed to allocate the Tcl_Obj's as late as possible, and only when actually needed. [Bug 1705778, leak K29]. file: bd705823f1 check-in: [a533a69b73] user: andreas_kupries branch: trunk, size: 282260
2007-04-20
17:13
merge updates from HEAD file: aeee6179e1 check-in: [92b90f2910] user: dgp branch: dgp-refactor, size: 282068
05:51
Whitespace policing, replacing commas in varargs with constant string catenation, and fixed an oversight in the fix for NZA time zones. file: 5429b7508e check-in: [d6ee490b6b] user: kennykb branch: trunk, size: 282068
2007-04-08
14:58
Merge updates from HEAD; may not build file: df66bd82c9 check-in: [8dc7079178] user: dgp branch: dgp-refactor, size: 282078
2007-04-05
13:31
Simplification of some argument processing through introduction of a helper macro. file: 6526089d03 check-in: [4864e8a741] user: dkf branch: trunk, size: 282074
2007-02-23
23:02
various "const" additions, in line with TIP #27 file: 2853c7c88f check-in: [e3ada46179] user: nijtmans branch: trunk, size: 282435
2007-01-17
10:20
Missed a spot; thanks to Andreas Kupries for spotting this one. file: fe2ffe8abc check-in: [c47afa6c2d] user: dkf branch: trunk, size: 282310
00:42
Added macros to make usage of ChannelBuffers clearer. file: d31be83467 check-in: [9b58a9089b] user: dkf branch: trunk, size: 282230
2006-12-27
03:04
* generic/tclIO.c (Tcl_GetsObj): Avoid checking for for the LF in a possible CRLF sequence when EOF has already been found. file: 710ec6df21 check-in: [d801cae602] user: mdejong branch: trunk, size: 281491
2006-11-13
17:51
* generic/tclIO.c: When [gets] on a binary channel needs to use the "iso8859-1" encoding, save a copy of that encoding per-thread to avoid repeated freeing and re-loading of it from the file system. This replaces the cached copy of this encoding that the platform initialization code used to keep in pre-8.5 releases. file: 0559a59549 check-in: [412bdf69f2] user: dgp branch: trunk, size: 281307
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: f7c8b058ba check-in: [8562d10e43] user: das branch: trunk, size: 280446
2006-11-08
11:41
Rewrite for style and clarity (esp. tclPkg.c) file: c6c54757b2 check-in: [36e6a4022c] user: dkf branch: trunk, size: 280438
2006-10-23
21:01
merge updates from HEAD file: 44cac4b72b check-in: [1f911d4cbb] user: dgp branch: dgp-refactor, size: 280728
2006-09-28
19:24
* generic/tclIO.c (Tcl_GetsObj): added two test'n'panic guards for possible NULL derefs, [Bug 1566382] and coverity #33. file: 796fce9406 check-in: [22f85bac32] user: msofer branch: trunk, size: 280727
2006-09-25
21:55
* generic/tclIO.c (Tcl_StackChannel): Fixed [SF Tcl Bug 1564642], aka coverity #51. Extended loop condition, added checking for NULL to prevent seg.fault. file: a35bfe9853 check-in: [a406cad4cf] user: andreas_kupries branch: trunk, size: 280549
21:55
* generic/tclIO.c (Tcl_StackChannel): Fixed [SF Tcl Bug 1564642], aka coverity #51. Extended loop condition, added checking for NULL to prevent seg.fault. file: 7d6da94e9f check-in: [82a33de162] user: andreas_kupries branch: core-8-4-branch, size: 279351
2006-07-10
23:01
* generic/tclIO.c (Tcl_CreateChannel): allow Tcl std channel inheritance to be #defined out (default remains in). file: dd263d7855 check-in: [51333eb85f] user: hobbs branch: core-8-4-branch, size: 279317
2006-04-28
16:09
Merge updates from HEAD file: 50cd9a6e5a check-in: [afab2ad07a] user: dgp branch: dgp-refactor, size: 280517
2006-04-05
00:18
* generic/tclIO.c (ReadChars): Added check and panic and commentary to a piece of code which relies on BUFFER_PADDING to create enough space at the beginning of each buffer forthe insertion of partial multi-byte data at the beginning of a buffer. To explain why this code is ok, and as precaution if someone twiddled the BUFFER_PADDING into uselessness. * generic/tclIO.c (ReadChars): [SF Tcl Bug 1462248]. Added code temporarily suppress the use of TCL_ENCODING_END set when eof was reached while the buffer we are converting is not truly the last buffer in the queue. together with the Utf bug below it was possible to completely bollox the buffer data structures, eventually crashing Tcl. * generic/tclEncoding.c (UtfToUtfProc): Fixed problem where the function accessed memory beyond the end of the input buffer. When TCL_ENCODING_END is set and the last bytes of the buffer start a multi-byte sequence. This bug contributed to [SF Tcl Bug 1462248]. file: 1c1c7202f6 check-in: [3f9727b64f] user: andreas_kupries branch: trunk, size: 280525
00:05
* generic/tclIO.c (ReadChars): Added check and panic and commentary to a piece of code which relies on BUFFER_PADDING to create enough space at the beginning of each buffer forthe insertion of partial multi-byte data at the beginning of a buffer. To explain why this code is ok, and as precaution if someone twiddled the BUFFER_PADDING into uselessness. * generic/tclIO.c (ReadChars): [SF Tcl Bug 1462248]. Added code temporarily suppress the use of TCL_ENCODING_END set when eof was reached while the buffer we are converting is not truly the last buffer in the queue. together with the Utf bug below it was possible to completely bollox the buffer data structures, eventually crashing Tcl. * generic/tclEncoding.c (UtfToUtfProc): Fixed problem where the function accessed memory beyond the end of the input buffer. When TCL_ENCODING_END is set and the last bytes of the buffer start a multi-byte sequence. This bug contributed to [SF Tcl Bug 1462248]. file: a5928c43b4 check-in: [6dddbc1976] user: andreas_kupries branch: core-8-4-branch, size: 279217
2006-03-27
18:08
* doc/CrtChannel.3: Added TCL_CHANNEL_VERSION_5, made it * generic/tcl.h: the version where the "truncateProc" * generic/tclIO.c: is defined at, and moved all channel * generic/tclIOGT.c: drivers of Tcl to v5. * generic/tclIORChan.c: * unix/tclUnixChan.c: * unix/tclUnixPipe.c: * win/tclWinChan.c: * win/tclWinConsole.c: * win/tclWinPipe.c: * win/tclWinSerial.c: * win/tclWinSock.c: file: fc99bace1a check-in: [5fab17f21d] user: andreas_kupries branch: trunk, size: 277393
2006-03-10
17:32
Calls TclpFinalizeSockets() as part of the TclFinalizeIOSubsystem() file: 96591b4d11 check-in: [e58d58ce10] user: vasiljevic branch: trunk, size: 277293
14:12
Invokes TclpFinalizeSockets() as part of the TclFinalizeIOSubsystem() call. file: 8c88222e5d check-in: [ab02be49ed] user: vasiljevic branch: core-8-4-branch, size: 276077
2006-02-23
14:45
merge updates from HEAD file: 562f74851b check-in: [7fa5cf84d0] user: dgp branch: dgp-refactor, size: 277143
2006-02-15
16:04
* generic/tclIO.c: Made several routines tolerant of * generic/tclIOUtil.c: interp == NULL arguments. [Bug 1380662] file: f4eccabeb2 check-in: [edfdd84186] user: dgp branch: core-8-4-branch, size: 275918
15:43
* generic/tclIO.c: Made several routines tolerant of * generic/tclIORChan.c: interp == NULL arguments. [Bug 1380662] * generic/tclIOUtil.c: file: 84456b7b90 check-in: [bd31f0fa9a] user: dgp branch: trunk, size: 277139
2006-01-25
18:38
merge updates from HEAD file: 4057f03009 check-in: [24df3318d7] user: dgp branch: dgp-refactor, size: 276929
2005-12-13
22:43
Export stubs for libtommath; fix mingw compiler warnings file: 3d195ed19d check-in: [3842b9c468] user: kennykb branch: trunk, size: 276929
2005-12-02
18:42
merge updates from HEAD file: f8879feb1c check-in: [1059d34b2b] user: dgp branch: dgp-refactor, size: 276916
2005-11-18
19:38
* generic/tclIO.c (TclFinalizeIOSubsystem): preserve statePtr until we netrieve next statePtr from it. file: bf3cd4e2f7 check-in: [6869f44f49] user: hobbs branch: trunk, size: 276914
19:38
* generic/tclIO.c (TclFinalizeIOSubsystem): preserve statePtr until we netrieve next statePtr from it. file: 062e16cf4d check-in: [420af74d34] user: hobbs branch: core-8-4-branch, size: 275704
17:15
* generic/tclIO.c (TclFinalizeIOSubsystem): Applied Pat Thoyts' patch for [SF Tcl Bug 1359094]. This moves the retrieval of the next channel state to the end of the loop, as the called closeproc may close other channels, i.e. modify the list we are iterating, invalidating any pointer retrieved earlier. file: dd36f23cd0 check-in: [6d056d3802] user: andreas_kupries branch: trunk, size: 276795
17:14
* generic/tclIO.c (TclFinalizeIOSubsystem): Applied Pat Thoyts' patch for [SF Tcl Bug 1359094]. This moves the retrieval of the next channel state to the end of the loop, as the called closeproc may close other channels, i.e. modify the list we are iterating, invalidating any pointer retrieved earlier. file: e128fc586e check-in: [e8ea129e06] user: andreas_kupries branch: core-8-4-branch, size: 275606
2005-11-03
17:52
merge updates from HEAD file: b0ed79e18f check-in: [d827b9cf1e] user: dgp branch: dgp-refactor, size: 276636
2005-10-31
17:15
typo file: 9355a69b34 check-in: [08fbaa0411] user: dgp branch: trunk, size: 276632
15:59
Convert to using ANSI decls/definitions and using the (ANSI) assumption that NULL can be cast to any pointer type transparently. file: 3456cae15a check-in: [1e0170d2bf] user: dkf branch: trunk, size: 276631
2005-10-18
20:46
merge updates from HEAD file: e23608ac60 check-in: [2e8613842e] user: dgp branch: dgp-refactor, size: 283409
2005-10-14
17:33
Backed off change from 2005-10-04 (see ChangeLog and Tcl Bug# 1323992 for more info). file: bac09df0aa check-in: [7ffd02a4fa] user: vasiljevic branch: trunk, size: 283411
17:12
Backed off change from 2005-10-04 (see ChangeLog and Tcl Bug# 1323992 for more info. file: c8f13b2e5c check-in: [88a6e2c1cc] user: vasiljevic branch: core-8-4-branch, size: 275457
2005-10-13
21:01
Added some more clarifying comments in Tcl_ClearChannelHandlers() file: 1b97d3c1e1 check-in: [7910c8fdd8] user: vasiljevic branch: core-8-4-branch, size: 276174
21:01
Added some more clarifying comments in Tcl_ClearChannelHandlers() file: be76f778c7 check-in: [e296d976e4] user: vasiljevic branch: trunk, size: 284120
20:51
Temporary ifdef TCL_THREADS changes done to de-activate pending event processing when channel is being closed/cutted. file: fe6e6a4e8f check-in: [f7a1a7a67b] user: vasiljevic branch: trunk, size: 283953
20:40
Temporary ifdef TCL_THREADS changes done to de-activate pending event processing when channel is being closed/cutted. file: e1e7329f26 check-in: [0c54954fc0] user: vasiljevic branch: core-8-4-branch, size: 275998
2005-10-08
13:44
merge updates from HEAD file: d93be79af4 check-in: [1b902ae45a] user: dgp branch: kennykb-numerics-branch, size: 283835
2005-10-04
18:32
Tcl_ClearChannelHandlers(): now deletes any outstanding timer for the channel. Also, prevents events still in the event queue from triggering on the current channel. file: 7450bd2b89 check-in: [b68b5918fb] user: vasiljevic branch: trunk, size: 283837
18:15
Tcl_ClearChannelHandlers(): now deletes any outstanding timer for the channel. Also, prevents events still in the event queue from triggering on the current channel. file: f1bd73c833 check-in: [2c5a4e4496] user: vasiljevic branch: core-8-4-branch, size: 275883
2005-09-12
15:40
merge updates from HEAD file: 2e6e1d6831 check-in: [156f19bcaf] user: dgp branch: dgp-refactor, size: 283310
2005-08-29
18:38
[kennykb-numerics-branch] Merge updates from HEAD. file: e6c199c4b1 check-in: [c74bd61cc0] user: dgp branch: kennykb-numerics-branch, size: 283309
2005-08-26
22:11
* generic/tclIO.c: Moved Tcl_{Cut,Splice}Channel to {Cut,Splice}Channel for internal use, and created new public functions for Tcl_{Cut,Splice}Channel which walk the whole stack of transformations and invoke the necessary thread actions. Added code to Tcl_(Un)StackChannel to properly invoke the thread actions when pushing and popping transformations on/from a channel. file: 04765e36f6 check-in: [fd26ccea74] user: andreas_kupries branch: trunk, size: 283317
2005-08-25
15:46
[kennykb-numerics-branch] Merge updates from HEAD * generic/tclExecute.c: Bug fix. INST_*SHIFT* opcodes stack management. [expr 0<<6] should be 0, not 6. file: 1089ea0b1f check-in: [6d651867f9] user: dgp branch: kennykb-numerics-branch, size: 278807
2005-08-24
17:56
TIP#219 IMPLEMENTATION * doc/SetChanErr.3: ** New File **. Documentation of the new channel API functions. * generic/tcl.decls: Stub declarations of the new channel API. * generic/tclDecls.h: Regenerated * generic/tclStubInit.c: * tclIORChan.c: ** New File **. Implementation of the reflected channel. * generic/tclInt.h: Integration of reflected channel and new error * generic/tclIO.c: propagation into the generic I/O core. * generic/tclIOCmd.c: * generic/tclIO.h: * library/init.tcl: * tests/io.test: Extended testsuite. * tests/ioCmd.test: * tests/chan.test: * generic/tclTest.c: * generic/tclThreadTest.c: * unix/Makefile.in: Integration into the build machinery. * win/Makefile.in: * win/Makefile.vc: file: 0d7592bd4a check-in: [d936ddccf8] user: andreas_kupries branch: trunk, size: 278815
2005-08-15
18:13
merge updates from HEAD file: 1328a3fb49 check-in: [b456e92317] user: dgp branch: kennykb-numerics-branch, size: 267055
17:23
merge updates from HEAD file: eb162a9945 check-in: [074d06ccf4] user: dgp branch: dgp-refactor, size: 267056
2005-08-04
17:28
* generic/tclIO.c (CloseChannel): Fixed comment nit, added apparently missing word to complete a sentence. * generic/tclObj.c (Tcl_DbDecrRefCount): Fixed whitespace nit in panic message. file: 0a177d54bd check-in: [561dff49b3] user: andreas_kupries branch: trunk, size: 267063
2005-08-02
18:14
merge updates from HEAD file: 5a69148b5c check-in: [10feab7c07] user: dgp branch: kennykb-numerics-branch, size: 267043
2005-07-26
04:11
Merge updates from HEAD file: 3953b5de2d check-in: [8351a734a6] user: dgp branch: dgp-refactor, size: 267044
2005-07-17
21:17
Getting more systematic about style file: 2476a99b47 check-in: [7591df07d6] user: dkf branch: trunk, size: 267039
2005-07-12
20:35
merged changes from HEAD file: 42ef115eba check-in: [5316ea45e0] user: kennykb branch: kennykb-numerics-branch, size: 268511
2005-06-22
21:12
merge updates from HEAD file: 984fbbeadc check-in: [2c0cc8807c] user: dgp branch: dgp-refactor, size: 268508
19:47
bug 1225727 file: 9c2f7216d0 check-in: [6c3e03abdb] user: kennykb branch: trunk, size: 268507
19:35
bug 1225727 file: 1934fe7187 check-in: [ab109e436a] user: kennykb branch: core-8-4-branch, size: 275367
2005-06-13
01:45
*** MERGE WITH HEAD *** (tag msofer-wcodes-20050611) file: addbec7e95 check-in: [d666b09ed5] user: msofer branch: msofer-wcodes-branch, size: 268485
2005-06-07
20:37
Stick to TCL_CHANNEL_VERSION_4; it's all in alpha anyway! file: 24870b7f82 check-in: [4d740196df] user: dkf branch: trunk, size: 268478
02:10
typo file: fd5047ac00 check-in: [8d33e93a6d] user: dgp branch: trunk, size: 268084
2005-06-06
23:45
TIP#208 implementation It's crude (especially in the tests and docs department) and incomplete (no truncation on non-POSIX platforms). file: 711e8b9c83 check-in: [3280056391] user: dkf branch: trunk, size: 268087
2005-05-11
16:58
merge updates from HEAD file: bc77584919 check-in: [a8212110f1] user: dgp branch: dgp-refactor, size: 266114
2005-05-10
18:33
Merged kennykb-numerics-branch back to the head; TIPs 132 and 232 file: 96d8d85443 check-in: [1cc2336920] user: kennykb branch: trunk, size: 266113
16:11
Merged changes from HEAD file: d4f2c28717 check-in: [bae9c0a530] user: kennykb branch: kennykb-numerics-branch, size: 266117
2005-05-05
18:37
* generic/tclInt.decls: Converted TclMatchIsTrivial to a macro. * generic/tclInt.h: * generic/tclUtil.c: * generic/tclIntDecls.h: `make genstubs` * generic/tclStubInit.c: * generic/tclBasic.c: Added callers of TclMatchIsTrivial where * generic/tclCmdIL.c: a search can be done more efficiently * generic/tclCompCmds.c:when it is recognized that a pattern match * generic/tclDictObj.c: is really an exact match. [Patch 1076088] * generic/tclIO.c: * generic/tclNamesp.c: * generic/tclVar.c: file: 20b6338c59 check-in: [751ccc1989] user: dgp branch: trunk, size: 266109
2005-04-29
22:39
Merge updates from HEAD file: 2e5b69518e check-in: [ac63d218d8] user: dgp branch: dgp-refactor, size: 265775
2005-04-25
21:37
Merged with HEAD. file: ded9bd5fcc check-in: [fcce6158ac] user: kennykb branch: kennykb-numerics-branch, size: 265778
2005-04-14
07:09
* generic/tclIO.c (Tcl_SetChannelBufferSize): Lowest size limit * tests/io.test: changed from ten bytes to one byte. Need * tests/iogt.test: for this change was proven by Ross Cartlidge <[email protected]> where [read stdin 1] was grabbing 10 bytes followed by starting a child process that was intended to continue reading from stdin. Even with -buffersize set to one, nine chars were getting lost by the buffersize over reading for the native read() caused by [read]. file: 679446ca91 check-in: [74c27f43eb] user: davygrvy branch: core-8-4-branch, size: 275343
02:41
* generic/tclIO.c (Tcl_SetChannelBufferSize): Lowest size limit * tests/io.test: changed from ten bytes to one byte. Need for this change was proven by Ross Cartlidge <[email protected]> where [read stdin 1] was grabbing 10 bytes followed by starting a child process that was intended to continue reading from stdin. Even with -buffersize set to one, nine chars were getting lost by buffer size over reading for the native read(). file: 75fa227f16 check-in: [7b37444344] user: davygrvy branch: trunk, size: 265775
2005-04-10
23:14
merged with HEAD and fixed 1180368 file: ee200646f2 check-in: [7bc9ca0285] user: kennykb branch: kennykb-numerics-branch, size: 265783
2005-04-08
17:10
explanatory comment file: fc76ca774f check-in: [53b1db0561] user: dgp branch: trunk, size: 265775
2005-02-24
19:53
Merge updates from HEAD file: 7932086e1b check-in: [185beecc8a] user: dgp branch: dgp-refactor, size: 265393
2005-02-02
15:53
sync with head, add TclStrToD (TIP #132) file: 456f85cdea check-in: [82ce6a0c40] user: kennykb branch: kennykb-numerics-branch, size: 265396
2005-01-27
22:53
TIP#218 IMPLEMENTATION * generic/tclDecls.h: Regenerated from tcl.decls. * generic/tclStubInit.c: * doc/CrtChannel.3: Documentation of extended API, * generic/tcl.decls: extended testsuite, and * generic/tcl.h: implementation. Removal of old * generic/tclIO.c: driver-specific TclpCut/Splice * generic/tclInt.h: functions. Replaced with generic * tests/io.test: thread-action calls through the * unix/tclUnixChan.c: new hooks. Update of all builtin * unix/tclUnixPipe.c: channel drivers to version 4. * unix/tclUnixSock.c: Windows drivers extended to * win/tclWinChan.c: manage thread state in a thread * win/tclWinConsole.c: action handler. * win/tclWinPipe.c: * win/tclWinSerial.c: * win/tclWinSock.c: * mac/tclMacChan.c: file: 743fe52e1f check-in: [1621430b8b] user: andreas_kupries branch: core-8-4-branch, size: 275414
00:22
TIP#218 IMPLEMENTATION * generic/tclDecls.h: Regenerated from tcl.decls. * generic/tclStubInit.c: * doc/CrtChannel.3: Documentation of extended API, * generic/tcl.decls: extended testsuite, and * generic/tcl.h: implementation. Removal of old * generic/tclIO.c: driver-specific TclpCut/Splice * generic/tclInt.h: functions. Replaced with generic * tests/io.test: thread-action calls through the * unix/tclUnixChan.c: new hooks. Update of all builtin * unix/tclUnixPipe.c: channel drivers to version 4. * unix/tclUnixSock.c: Windows drivers extended to * win/tclWinChan.c: manage thread state in a thread * win/tclWinConsole.c: action handler. * win/tclWinPipe.c: * win/tclWinSerial.c: * win/tclWinSock.c: file: 1f5ac66365 check-in: [0162fae7ad] user: andreas_kupries branch: trunk, size: 265400
2004-12-09
23:00
Merge updates from HEAD file: 205af71686 check-in: [24873008cc] user: dgp branch: dgp-refactor, size: 263870
2004-11-30
19:34
Patch 976520 reworks several of the details involved with startup/initialization of the Tcl library, focused on the activities of Tcl_FindExecutable(). * generic/tclIO.c: Removed bogus claim in comment that encoding "iso8859-1" is "built-in" to Tcl. * generic/tclInt.h: Created a new struct ProcessGlobalValue, * generic/tclUtil.c: routines Tcl(Get|Set)ProcessGlobalValue, and function type TclInitProcessGlobalValueProc. Together, these take care of the housekeeping for "values" (things that can be held in a Tcl_Obj) that are global across a whole process. That is, they are shared among multiple threads, and epoch and mutex protection must govern the validity of cached copies maintained in each thread. * generic/tclNotify.c: Modified TclInitNotifier() to tolerate being called multiple times in the same thread. * generic/tclEvent.c: Dropped the unused argv0 argument to TclInitSubsystems(). Removed machinery to unsure only one TclInitNotifier() call per thread, now that that is safe. Converted Tcl(Get|Set)LibraryPath to use a ProcessGlobalValue, and moved them to tclEncoding.c. * generic/tclBasic.c: Updated caller. * generic/tclInt.h: TclpFindExecutable now returns void. * unix/tclUnixFile.c: * win/tclWinFile.c: * win/tclWinPipe.c: * generic/tclEncoding.c: Built new encoding search initialization on a foundation of ProcessGlobalValues, exposing new routines Tcl(Get|Set)EncodingSearchPath. A cache of a map from encoding name to directory pathname keeps track of where encodings are available for loading. Tcl_FindExecutable greatly simplified into just three function calls. The "library path" is now misnamed, as its only remaining purpose is as a foundation for the default encoding search path. * generic/tclInterp.c: Inlined the initScript that is evaluated by Tcl_Init(). Added verification after initScript evaluation that Tcl can find its installed *.enc files, and that it has initialized [encoding system] in agreement with what the environment expects. [tclInit] no longer driven by the value of $::tcl_libPath; it largely constructs its own search path now, rather than attempt to share one with the encoding system. * unix/tclUnixInit.c: TclpSetInitialEncodings factored so that a new * win/tclWinInit.c: routine TclpGetEncodingNameFromEnvironment can reveal that Tcl thinks the [encoding system] should be, even when an incomplete encoding search path, or a missing *.enc file won't allow that initialization to succeed. TclpInitLibraryPath reworked as an initializer of a ProcessGlobalValue. * unix/tclUnixTest.c: Update implementations of [testfindexecutable], [testgetdefenc], and [testsetdefenc]. * tests/unixInit.test: Corrected tests to operate properly even when a value of TCL_LIBRARY is required to find encodings. * generic/tclInt.decls: New internal stubs: TclGetEncodingSearchPath, TclSetEncodingSearchPath, TclpGetEncodingNameFromEnvironment. These are candidates for public exposure by future TIPs. * generic/tclIntDecls.h: make genstubs * generic/tclStubInit.c: * generic/tclTest.c: Updated [testencoding] to use * tests/encoding.test: Tcl(Get|Set)EncodingSearchPath. Updated tests. file: dafd84dfcf check-in: [5b205fd672] user: dgp branch: trunk, size: 263866
2004-11-09
15:47
Janitorial whitespace/style fixes. file: 26dcab5cd8 check-in: [95ac722b47] user: dkf branch: trunk, size: 263934
2004-10-28
18:45
merge updates from HEAD file: 5ff15d6157 check-in: [5fdab1eb47] user: dgp branch: dgp-refactor, size: 274423
2004-10-06
15:59
* generic/tclBasic.c: * generic/tclBinary.c: * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclCompExpr.c: * generic/tclDictObj.c: * generic/tclEncoding.c: * generic/tclExecute.c: * generic/tclFCmd.c: * generic/tclHistory.c: * generic/tclIndexObj.c: * generic/tclInterp.c: * generic/tclIO.c: * generic/tclIOCmd.c: * generic/tclNamesp.c: * generic/tclObj.c: * generic/tclPkg.c: * generic/tclResult.c: * generic/tclScan.c: * generic/tclTimer.c: * generic/tclTrace.c: * generic/tclUtil.c: * generic/tclVar.c: It is a poor practice to directly set or append to the value of the objResult of an interp, because that value might be shared, and in that circumstance a Tcl_Panic() will be the result. Searched for example of this practice and replaced with safer alternatives, often using the Tcl_AppendResult() routine that dkf just rehabilitated. file: ad686b7db2 check-in: [9883f6bfdb] user: dgp branch: trunk, size: 274419
2004-09-21
23:10
merge updates from HEAD file: be09bb51a0 check-in: [1d1ea15d54] user: dgp branch: dgp-refactor, size: 274408
2004-09-10
20:06
Fix [Bug 1025359] to make sure wide seeks don't lose errors file: 12bee30999 check-in: [ffbedbe75d] user: dkf branch: core-8-4-branch, size: 273876
20:04
Fix [Bug 1025359]; make sure wide seeks don't lose errors file: f95e13963f check-in: [f1b225581b] user: dkf branch: trunk, size: 274404
2004-09-08
23:02
Merge updates from HEAD file: 55f1cf59a2 check-in: [dff8728918] user: dgp branch: dgp-refactor, size: 274418
2004-07-15
20:46
* generic/tclIO.h (CHANNEL_INCLOSE): New flag. Set in * generic/tclIO.c (Tcl_UnregisterChannel): 'Tcl_Close' while the * generic/tclIO.c (Tcl_Close): close callbacks are run. Checked in 'Tcl_Close' and 'Tcl_Unregister' to prevent recursive call of 'close' in the close-callbacks. This is a possible error made by implementors of virtual filesystems based on 'tclvfs', thinking that they have to close the channel in the close handler for the filesystem. * generic/tclIO.c: * generic/tclIO.h: * Not reverting, but #ifdef'ing the changes from May 19, 2004 out of the core. This removes the ***POTENTIAL INCOMPATIBILITY*** for channel drivers it introduced. This has become possible due to Expect gaining a BlockModeProc and now handling blockingg and non-blocking modes correctly. Thus [SF Tcl Bug 943274] is still fixed if a recent enough version of Expect is used. * doc/CrtChannel.3: Added warning about usage of a channel without a BlockModeProc. file: 29d2337d54 check-in: [ec89766307] user: andreas_kupries branch: trunk, size: 274426
20:46
* generic/tclIO.h (CHANNEL_INCLOSE): New flag. Set in * generic/tclIO.c (Tcl_UnregisterChannel): 'Tcl_Close' while the * generic/tclIO.c (Tcl_Close): close callbacks are run. Checked in 'Tcl_Close' and 'Tcl_Unregister' to prevent recursive call of 'close' in the close-callbacks. This is a possible error made by implementors of virtual filesystems based on 'tclvfs', thinking that they have to close the channel in the close handler for the filesystem. * generic/tclIO.c: * generic/tclIO.h: * Not reverting, but #ifdef'ing the changes from May 19, 2004 out of the core. This removes the ***POTENTIAL INCOMPATIBILITY*** for channel drivers it introduced. This has become possible due to Expect gaining a BlockModeProc and now handling blockingg and non-blocking modes correctly. Thus [SF Tcl Bug 943274] is still fixed if a recent enough version of Expect is used. * doc/CrtChannel.3: Added warning about usage of a channel without a BlockModeProc. file: bcb94738eb check-in: [91ff646723] user: andreas_kupries branch: core-8-4-branch, size: 273898
2004-06-01
18:44
* generic/tclIO.c (Tcl_SetChannelOption): Took out the range verification on -buffersize so original behavior for silently ignoring bad settings is returned. The only difference now is the behavior difference between atoi and Tcl_GetInt which gains the ability to error for 'not a number' and can understand hexidecimal. file: 836726cf17 check-in: [1478f4055c] user: davygrvy branch: trunk, size: 272646
10:00
* generic/tclIO.c (Tcl_SetChannelOption): Invalid settings for -buffersize weren't being reported as errors and were blindly ignored. Now reports conversion errors to an int and checks ranges for validity. atoi() swapped for Tcl_GetInt(). file: e7cc94ee6a check-in: [cc6db8153e] user: davygrvy branch: trunk, size: 272881
2004-05-27
14:29
Merge updates from HEAD. Also implemented flags argument to TclCompEvalObj(). file: d1a67bbdf5 check-in: [8f7452ee0c] user: dgp branch: dgp-refactor, size: 272578
2004-05-19
19:41
* tclIO.c: Fixed [SF Tcl Bug 943274]. This is the same problem as * tclIO.h: [SF Tcl Bug 462317], see ChangeLog entry 2001-09-26. The fix done at that time is incomplete. It is possible to get around it if the actual read operation is defered and not executed in the event handler itself. Instead of tracking if we are in an read caused by a synthesized fileevent we now track if the OS has delivered a true event = actual data and bypass the driver if a read finds that there is no actual data waiting. The flag is cleared by a short or full read. file: 1d87764856 check-in: [30839ce2a7] user: andreas_kupries branch: trunk, size: 272586
19:23
Removed one bogus clearance of the has-more flag. Erroneously kept after shifting the code. file: 16208401fd check-in: [36ef9ecd35] user: andreas_kupries branch: core-8-4-branch, size: 272112
19:16
* tclIO.c: Fixed [SF Tcl Bug 943274]. This is the same problem as * tclIO.h: [SF Tcl Bug 462317], see ChangeLog entry 2001-09-26. The fix done at that time is incomplete. It is possible to get around it if the actual read operation is defered and not executed in the event handler itself. Instead of tracking if we are in an read caused by a synthesized fileevent we now track if the OS has delivered a true event = actual data and bypass the driver if a read finds that there is no actual data waiting. The flag is cleared by a short or full read. file: 3013224265 check-in: [f99f83647b] user: andreas_kupries branch: core-8-4-branch, size: 272164
2004-05-04
17:44
Merge updates from HEAD. file: 7b09e301e7 check-in: [de9c64200c] user: dgp branch: dgp-refactor, size: 269300
2004-04-23
23:40
* generic/tclIO.c (Tcl_SetChannelOption): Fixed [SF Tcl Bug 930851]. When changing the eofchar we have to zap the related flags to prevent them from prematurely aborting the next read. file: 9e14d5002c check-in: [3404cd2712] user: andreas_kupries branch: core-8-4-branch, size: 268834
23:38
* generic/tclIO.c (Tcl_SetChannelOption): Fixed [SF Tcl Bug 930851]. When changing the eofchar we have to zap the related flags to prevent them from prematurely aborting the next read. file: bd4405c0d2 check-in: [81e0f61614] user: andreas_kupries branch: trunk, size: 269308
2004-04-09
20:57
Merge updates from HEAD file: 858d5b9a97 check-in: [5b5c8133e5] user: dgp branch: dgp-refactor, size: 269033
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: 8afc7c4a7e check-in: [2e5b18c85c] user: dgp branch: trunk, size: 269029
2004-03-26
22:28
Merge updates from HEAD. file: 2b4d3e5454 check-in: [6e8d2d7ba1] user: dgp branch: dgp-refactor, size: 269054
2004-03-09
12:59
fixed typos in documentation and comments file: bf8dc942a3 check-in: [720c4fb879] user: vincentdarley branch: trunk, size: 269060
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: 3e62bee6bb check-in: [beeeb45bbf] user: dgp branch: dgp-refactor, size: 269067
2004-02-02
22:00
* generic/tclIO.c (Tcl_Ungets): fixes improper filling of the channel buffer. [Bug 405995] file: 782eae764e check-in: [de1126b198] user: davygrvy branch: core-8-4-branch, size: 268560
21:31
* generic/tclIO.c (Tcl_Ungets): fixed improper filling of the channel buffer. [Bug 405995] file: 7b3e9b1303 check-in: [b0dd06df66] user: davygrvy branch: trunk, size: 269068
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: 9b16d8ae0f check-in: [524a53e3b3] user: davygrvy branch: trunk, size: 269080
2003-04-22
23:20
* The changes below fix SF bugs [593810], and [718045]. * generic/tclIO.c (Tcl_CutChannel, Tcl_SpliceChannel): Invoke TclpCutSockChannel and TclpSpliceSockChannel. * generic/tclInt.h: Declare TclpCutSockChannel and TclpSpliceSockChannel. * unix/tclUnixSock.c (TclpCutSockChannel, TclpSpliceSockChannel): Dummy functions, on unix the sockets are _not_ handled specially. * mac/tclMacSock.c (TclpCutSockChannel, TclpSpliceSockChannel): * win/tclWinSock.c (TclpCutSockChannel, TclpSpliceSockChannel): New functions to handle socket specific cut/splice operations: auto-initi of socket system for thread on splice, management of the module internal per-thread list of sockets, management of association of sockets with HWNDs for event notification. * win/tclWinSock.c (NewSocketInfo): Extended initialization assignments to cover all items of the structure. During debugging of the new code mentioned above I found that two fileds could contain bogus data. * win/tclWinFile.c: Added #undef HAVE_NO_FINDEX_ENUMS before definition because when compiling in debug mode the compiler complains about a redefinition, and this warning is also treated as an error. file: 55275be4b3 check-in: [1aff0f8acb] user: andreas_kupries branch: trunk, size: 269043
2003-04-11
17:39
* generic/tclIO.c (UpdateInterest): When dropping interest in TCL_READABLE now dropping interest in TCL_EXCEPTION too. This fixes a bug where Expect detects eof on a file prematurely on solaris 2.6 and higher. A much more complete explanation is in the code itself (40 lines of comments for a one-line change :) file: 2ae9fff0ac check-in: [31a2593db7] user: andreas_kupries branch: trunk, size: 268980
17:35
* generic/tclIO.c (UpdateInterest): When dropping interest in TCL_READABLE now dropping interest in TCL_EXCEPTION too. This fixes a bug where Expect detects eof on a file prematurely on solaris 2.6 and higher. A much more complete explanation is in the code itself (40 lines of comments for a one-line change :) file: 08f63cd25b check-in: [75fb1b9079] user: andreas_kupries branch: core-8-4-branch, size: 268579
2003-04-10
22:18
Experimental change. Easier to check in and later back out if there are problems than to try and compile everything manually on all the platforms. This way the AS auto-build gets the change without fuss, and I can read the logs tomorrow. file: cbb7eb04c8 check-in: [472e7cd66b] user: andreas_kupries branch: core-8-4-branch, size: 267228
2003-03-06
20:14
* generic/tclIO.c (Tcl_Seek, Tcl_OutputBuffered): If there is data buffered in the statePtr->curOutPtr member then set the BUFFER_READY flag in Tcl_Seek. This is needed so that the next call to FlushChannel will write any buffered bytes before doing the seek. The existing code would set the BUFFER_READY flag inside the Tcl_OutputBuffered function. This was a programming error made when Tcl_OutputBuffered was originally created in CVS revision 1.35. The setting of the BUFFER_READY flag should not have been included in the Tcl_OutputBuffered function. * generic/tclTest.c (TestChannelCmd): Use the Tcl_InputBuffered and Tcl_OutputBuffered util methods to query the amount of buffered input and output. file: 09bd5142b0 check-in: [23b96afaed] user: mdejong branch: trunk, size: 267297
10:10
* generic/tclIO.c (Tcl_Flush): Compare the nextAdded member of the ChannelBuffer to the nextRemoved member to determine if any output has been buffered. The previous check against the value 0 seems to have just been a coding error. See other methods like Tcl_OutputBuffered for examples where nextAdded is compared to nextRemoved to find the number of bytes buffered. file: 36af492ddd check-in: [f7c5ccc73c] user: mdejong branch: trunk, size: 266997
09:58
* generic/tclIO.c (Tcl_GetsObj): Check that the eol pointer has not gone past the end of the string when in auto translation mode and the INPUT_SAW_CR flag is set. The previous code worked because the end of string value \0 was being compared to \n, this patch just skips that pointless check. file: 70b07eb2ad check-in: [f2e6fa75ca] user: mdejong branch: trunk, size: 266953
09:47
* generic/tclIO.c (WriteBytes, WriteChars, Tcl_GetsObj, ReadBytes): Rework calls to TranslateOutputEOL to make it clear that a boolean value is being returned. Add some comments in an effort to make the code more clear. This patch makes no functional changes. file: 244c6391f4 check-in: [5c860f8cb1] user: mdejong branch: trunk, size: 266933
09:16
* generic/tclIO.c (Tcl_SetChannelOption): Invoke the Tcl_SetChannelBufferSize method as a result of changing the -buffersize option to fconfigure. The previous implementation used some inlined code that reset the buffer size to the default size instead of ignoring the request as implemented in Tcl_SetChannelBufferSize. * tests/io.test: Update test case so that it actually checks the implementation of Tcl_SetChannelBufferSize. file: 311dcde804 check-in: [743ec70c25] user: mdejong branch: trunk, size: 266772
2003-02-19
01:04
(HaveVersion): correctly decl static file: 1198e71832 check-in: [4e98446e21] user: hobbs branch: trunk, size: 266890
2003-02-17
22:31
* generic/tclIO.c (Tcl_GetsObj): Minor change so that eol is only assigned at the top of the TCL_TRANSLATE_AUTO case block. The other cases assign eol so this does not change any functionality. file: 60160af7fb check-in: [bfd396bc22] user: mdejong branch: trunk, size: 266885
2003-01-26
05:59
* generic/tclIO.c (Tcl_CutChannel, Tcl_SpliceChannel): Invoke TclpCutFileChannel and TclpSpliceFileChannel. * generic/tclInt.h: Declare TclpCutFileChannel and TclpSpliceFileChannel. * unix/tclUnixChan.c (FileCloseProc, TclpOpenFileChannel, Tcl_MakeFileChannel, TclpCutFileChannel, TclpSpliceFileChannel): Implement thread load data cut and splice for file channels. This avoids an invalid memory ref when compiled with -DDEPRECATED. * win/tclWinChan.c (FileCloseProc, TclpCutFileChannel, TclpSpliceFileChannel): Implement thread load data cut and splice for file channels. This avoids an invalid memory ref that was showing up in the thread extension. file: 8e998661b6 check-in: [40bc638062] user: mdejong branch: trunk, size: 266884
2003-01-24
11:59
stringObj unicode Tcl_SetObjLength fixes file: a8aa2bb2d2 check-in: [dce71c6888] user: vincentdarley branch: trunk, size: 266825
2002-08-20
20:25
merged with trunk at tag macosx-8-4-merge-2002-08-20-trunk file: 4f1873b1cf check-in: [354986d9c3] user: das branch: macosx-8-4-branch, size: 266602
2002-07-30
18:36
* tests/io.test: * generic/tclIO.c (WriteChars): Added flag to break out of loop if nothing of the input is consumed at all, to prevent infinite looping of called with a non-UTF-8 string. Fixes Bug 584603 (partially). Added new test "io-60.1". Might need additional changes to Tcl_Main so that unprintable results are printed as binary data. file: 7a31cfa01c check-in: [e3952500b8] user: andreas_kupries branch: trunk, size: 266610
2002-06-10
05:33
Merging with TOT as of 06/09/2002. file: 365bdc4147 check-in: [73b68fb238] user: wolfsuit branch: macosx-8-4-branch, size: 266233
2002-05-24
21:19
TIP#91 implementation; makes old style channels binary compatible with new TIP#72-enabled Tcl. See http://purl.org/tcl/tip/91 for details. file: 6585deb671 check-in: [b14125cf9e] user: dkf branch: trunk, size: 266224
2002-04-18
01:51
* generic/tclEncoding.c (EscapeFromUtfProc): * generic/tclIO.c (WriteChars, Tcl_Close): corrected the handling of outputting end escapes for escape-based encodings. [Bug #526524] (yamamoto) file: b5eb2dd3f9 check-in: [f6c1bdfbf8] user: hobbs branch: trunk, size: 263469
2002-03-18
22:30
* generic/tclCompile.c (TclCompileTokens): Modified imported bugfix to use a heap variable for the message buffer instead of placing it on the stack. * Updated "mod-8-3-1-branch" to head of "core-8-3-1-branch" to get the newest fixes for tcl 8.3.4 into this branch. file: c44ad02576 check-in: [d631cf3e55] user: andreas_kupries branch: mod-8-3-4-branch, size: 244715
2002-03-11
20:43
* generic/tclEncoding.c: Fix typo in comment. * generic/tclIO.c (DoReadChars, ReadBytes, ReadChars): Use NULL value instead of pointer set to NULL to make things more clear. Reorder arguments so that they match the function signatures. Cleanup little typos and add more descriptive comment. file: 43e1ae9b93 check-in: [d89191c5ce] user: mdejong branch: trunk, size: 262209
2002-03-02
05:00
* tests/encoding.test: added encoding-23.* tests * generic/tclIO.c (FilterInputBytes): reset the TCL_ENCODING_START flags in the ChannelState when using 'gets'. [Bug #523988] Also reduced the value of ENCODING_LINESIZE from 30 to 20 as this seems to improve the performance of 'gets' according to tclbench. file: 75b6ae938c check-in: [3af9e80543] user: hobbs branch: core-8-3-1-branch, size: 242918
04:55
* tests/encoding.test: added encoding-23.* tests * generic/tclIO.c (FilterInputBytes): reset the TCL_ENCODING_START flags in the ChannelState when using 'gets'. [Bug #523988] Also reduced the value of ENCODING_LINESIZE from 30 to 20 as this seems to improve the performance of 'gets' according to tclbench. file: 2f8e64d9ca check-in: [53ae028f58] user: hobbs branch: trunk, size: 262103
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: de0c033ded check-in: [8d82de1905] user: dkf branch: trunk, size: 261912
2002-02-05
02:21
Merging with the current TOT. Very few conflicts, mostly in the generated files. file: 78c8b35b08 check-in: [f469a31a06] user: wolfsuit branch: macosx-8-4-branch, size: 260966
2002-01-26
01:10
* Sought out and eliminated instances of CONST-casting that are no longer needed after the TIP 27 effort. file: f7866d875e check-in: [4bca1d26db] user: dgp branch: trunk, size: 260957
00:30
Make -eofchar and -translation options read only for server sockets. [Bug 496733] * generic/tclIO.c (Tcl_GetChannelOption, Tcl_SetChannelOption): Instead of returning nothing for the -translation option on a server socket, always return "auto". Return the empty string enclosed in quotes for the -eofchar option on a server socket. Fixup -eofchar usage message so that it matches the implementation. * tests/io.test: Add -eofchar tests and -translation tests to ensure options are read only on server sockets. * tests/socket.test: Update tests to account for -eofchar and -translation option changes. file: 6054240a7b check-in: [ef568c52d6] user: mdejong branch: core-8-3-1-branch, size: 242728
2002-01-25
23:06
Make -eofchar and -translation options read only for server sockets. [Bug 496733] * generic/tclIO.c (Tcl_GetChannelOption, Tcl_SetChannelOption): Instead of returning nothing for the -translation option on a server socket, always return "auto". Return the empty string enclosed in quotes for the -eofchar option on a server socket. Fixup -eofchar usage message so that it matches the implementation. * tests/io.test: Add -eofchar tests and -translation tests to ensure options are read only on server sockets. * tests/socket.test: Update tests to account for -eofchar and -translation option changes. file: 075ab61e4b check-in: [1c08e33e95] user: mdejong branch: trunk, size: 260979
20:40
* Updated interfaces of generic/tclEncoding, generic/tclFilename.c, generic/tclIOUtil.c, generic/tclPipe.c, generic/tclResult.c, generic/tclUtil.c, generic/tclVar.c and mac/tclMacResource.c according to TIP 27. Tcl_TranslateFileName rewritten as wrapper around VFS-aware version. Updated callers. ***POTENTIAL INCOMPATIBILITY*** Includes source incompatibilities: argv arguments of Tcl_Concat, Tcl_JoinPath, Tcl_OpenCommandChannel, Tcl_Merge; argvPtr arguments of Tcl_SplitList and Tcl_SplitPath. file: 2e65a3bcb6 check-in: [fceed15544] user: dgp branch: trunk, size: 260618
2002-01-21
20:38
* generic/tclIO.c (WriteChars): Fix for SF #506297, reported by Martin Forssen <[email protected]>. The encoding chosen in the script exposing the bug writes out three intro characters when TCL_ENCODING_START is set, but does not consume any input as TCL_ENCODING_END is cleared. As some output was generated the enclosing loop calls UtfToExternal again, again with START set. Three more characters in the out and still no use of input ... To break this infinite loop we remove TCL_ENCODING_START from the set of flags after the first call (no condition is required, the later calls remove an unset flag, which is a no-op). This causes the subsequent calls to UtfToExternal to consume and convert the actual input. file: cc960a4461 check-in: [1b53b7b70c] user: andreas_kupries branch: trunk, size: 260622
20:37
* generic/tclIO.c (WriteChars): Fix for SF #506297, reported by Martin Forssen <[email protected]>. The encoding chosen in the script exposing the bug writes out three intro characters when TCL_ENCODING_START is set, but does not consume any input as TCL_ENCODING_END is cleared. As some output was generated the enclosing loop calls UtfToExternal again, again with START set. Three more characters in the out and still no use of input ... To break this infinite loop we remove TCL_ENCODING_START from the set of flags after the first call (no condition is required, the later calls remove an unset flag, which is a no-op). This causes the subsequent calls to UtfToExternal to consume and convert the actual input. file: aa61321298 check-in: [c667016762] user: andreas_kupries branch: core-8-3-1-branch, size: 242379
2002-01-17
04:37
* More TIP 27 updates in tclIOUtil.c and tclIndexObj.c that were overlooked before. Updated callers. ***POTENTIAL INCOMPATIBILITY*** Includes a source incompatibility in the tablePtr arguments of the Tcl_GetIndexFromObj* routines. file: 1fcfc5a953 check-in: [28b6020550] user: dgp branch: trunk, size: 259759
03:03
* Updated APIs in generic/tclUtf.c and generic/tclRegexp.c according to the guidelines of TIP 27. Updated callers. file: 958bbcff99 check-in: [17ade15700] user: dgp branch: trunk, size: 259753
2002-01-15
21:19
* Updated APIs in generic/tclIOUtil.c and generic/tclPosixStr.c according to the guidelines of TIP 27. Updated callers. [Patch 499196] file: 6af46250e1 check-in: [c606fbd2da] user: dgp branch: trunk, size: 259747
17:55
* Updated APIs in the file generic/tclIO.c according to the guidelines of TIP 27. Several minor documentation corrections as well. * Updated channel driver interface according to the guidelines of TIP 27. See also [Bug 500348]. * Moved Tcl_EolTranslation enum declaration from generic/tcl.h to generic/tclInt.h (renamed to TclEolTranslation). It is not used anywhere in Tcl's public interface. file: 286e796dd6 check-in: [9c9edf24eb] user: dgp branch: trunk, size: 259574
2001-12-17
22:55
* Applied #219311 on behalf of Rolf Schroedter <[email protected]> to prevent fcopy on serial ports from flooding the event queue. file: dc100182ac check-in: [0e625dfd2b] user: andreas_kupries branch: trunk, size: 259459
2001-12-12
22:32
* generic/tclIO.c (Tcl_GetsObj): Applied patch for bug #491341 as provided by Don Porter <[email protected]>. Fixes assumption of having an empty Tcl_Obj to work with. file: 9566dd6fb8 check-in: [8c4490b8d5] user: andreas_kupries branch: trunk, size: 259046
2001-12-04
21:52
* NOTES: * tcl.h: * tclInt.h: Moved the macros to control feature exclusion and stack manipulation into the private area of the tcl headers. Renamed the macros for TCL_STRUCT_ON_HEAP to make their names more sensible. * tclCmdAH.c: * tclCompCmds.c: * tclCompExpr.c: * tclCompile.c: * tclExecute.c: * tclIO.c: * tclParse.c: * tclParseExpr.c: * tclScan.c: * tclUnixChan.c: Adapted to changed macro names, added some more places there structures go on the heap instead of the stack. Fixed a problem with TCL_FMT_STATIC_FLOATBUFFER_SZ which caused the interp to crash when actually used to reduce the usage of the stack. file: b2f2c960a4 check-in: [fa28ece419] user: andreas_kupries branch: mod-8-3-4-branch, size: 243315
2001-11-28
17:58
* NOTES: New file. Read here about the new modularization macros, interdependencies, implications, etc. * static.sizes.html: New file. Report on the cuts achieved so far. Regarding the object files only the files which did change in size are reported. Usage of the MODULAR_TCL macro currently cuts about 17 % of the code (measured using strip'ped object files and libraries). * Changed files so far .. [cut, see changelog for full list] * Working on modularization of the tcl core. *************************** **** mod-8-3-4-branch **** *************************** file: 9f762c0fa4 check-in: [052bbd8095] user: andreas_kupries branch: mod-8-3-4-branch, size: 243308
2001-11-07
04:48
See ChangeLog. file: 71ed97fd68 check-in: [e43a5e4c29] user: andreas_kupries branch: core-8-3-1-branch, size: 241528
04:47
See ChangeLog file: 5cf3314b63 check-in: [755139d84b] user: andreas_kupries branch: trunk, size: 259027
2001-11-05
14:23
Improved backward-compatability on platforms by adding migration entries to the stubs table for Tcl_Seek and Tcl_Tell file: 3cd06ed5ed check-in: [37677d9c1f] user: dkf branch: dkf-64bit-support-branch, size: 258750
2001-10-16
05:31
Undo of mistaken commit. Sorry! file: 77f10a5588 check-in: [092e282e8d] user: dgp branch: trunk, size: 258719
05:10
* Added test to demonstrate memory corruption problems. [Bug 219393]. file: 6b3852bf93 check-in: [6134ad6471] user: dgp branch: trunk, size: 258725
2001-09-28
16:30
* generic/tclIO.c: added (on behalf of Kevin Kenny <[email protected]>) two more '(ClientData)' casts on calls to Tcl_Preserve and Tcl_Release -- ones that Vince apparently missed. file: 126ca6d772 check-in: [2c68fed13d] user: andreas_kupries branch: core-8-3-1-branch, size: 241232
16:06
Added necessary casts to ClientData on a pair of calls to Tcl_Preserve and Tcl_Release. file: 2e7e15a620 check-in: [35be6fd3d4] user: kennykb branch: trunk, size: 258723
14:29
Factoring out some more 64/32-bit OS interfaces file: 7d65aea32a check-in: [8f153d8b82] user: dkf branch: dkf-64bit-support-branch, size: 257767
02:26
* generic/tclIO.c (ChannelTimerProc): Added Tcl_Preserve() and Tcl_Release() to fix segfault introduced by the 2001-09-26 changes. [Bug 465494] * doc/TCL_MEM_DEBUG.3: Updated out-of-date reference to #define GUARD_SIZE. file: 8263e3e3a0 check-in: [3828b00948] user: dgp branch: core-8-3-1-branch, size: 241194
00:41
* Added Tcl_Preserve() and Tcl_Release() to fix segfault introduced by the 2001-09-26 changes. [Bug 465494] file: 3ad91b5e1b check-in: [70efe784b9] user: dgp branch: trunk, size: 258693
2001-09-27
14:23
Backed out unwise changes file: 4101bce032 check-in: [a6d453858f] user: dkf branch: dkf-64bit-support-branch, size: 257764
02:26
* The changes below fix [Bug #462317] where Expect tried to read more than was in the buffers and then blocked in the OS call as its pty channel driver provides no blockmodeproc through which the OS could be notified of blocking-behaviour. Because of this the general I/O core has to take more care than usual to preserve the semantics of non-blocking channels. * generic/tclIO.c (Tcl_ReadRaw): Do not read from the driver if the channel is non-blocking and the fileevent causing the read was generated by a timer. We do not know if there is data available from the OS. Instead of going to the OS for more and potentially blocking we simply signal EWOULDBLOCK to the higher levels to cause the system to wait for true fileevents. (GetInput): Same as before. (ChannelTimerProc): Added set and clear of CHANNEL_TIMER_FEV. * generic/tclIO.h (CHANNEL_TIMER_FEV): New flag for channels. Is set if a fileevent was generated by a timer, the channel is not blocking and the driver did not provide a blockmodeproc. In that case the I/O core has to be especially careful about going to the driver for more data. file: 3f9d00e573 check-in: [defcffd4a1] user: andreas_kupries branch: core-8-3-1-branch, size: 241157
02:12
* The changes below fix [Bug #462317] where Expect tried to read more than was in the buffers and then blocked in the OS call as its pty channel driver provides no blockmodeproc through which the OS could be notified of blocking-behaviour. Because of this the general I/O core has to take more care than usual to preserve the semantics of non-blocking channels. * generic/tclIO.c (Tcl_ReadRaw): Do not read from the driver if the channel is non-blocking and the fileevent causing the read was generated by a timer. We do not know if there is data available from the OS. Instead of going to the OS for more and potentially blocking we simply signal EWOULDBLOCK to the higher levels to cause the system to wait for true fileevents. (GetInput): Same as before. (ChannelTimerProc): Added set and clear of CHANNEL_TIMER_FEV. * generic/tclIO.h (CHANNEL_TIMER_FEV): New flag for channels. Is set if a fileevent was generated by a timer, the channel is not blocking and the driver did not provide a blockmodeproc. In that case the I/O core has to be especially careful about going to the driver for more data. file: 8d2ceb3e08 check-in: [cd08453fb3] user: andreas_kupries branch: trunk, size: 258657
2001-09-26
14:23
Now builds on Solaris8/SPARC with both SunPro CC *and* GCC. file: 3022535e1c check-in: [4850711173] user: dkf branch: dkf-64bit-support-branch, size: 258354
2001-09-25
16:49
Woo hoo! Builds on one platform (Solaris8/SPARC with SunPro CC) file: 12cd5f7498 check-in: [dd2d80954c] user: dkf branch: dkf-64bit-support-branch, size: 258024
2001-09-06
09:35
Changes due to TIP#49 "Tcl_OutputBuffered" from Rolf Schroedter file: 0561d28cad check-in: [252b889fc2] user: dkf branch: trunk, size: 257791
2001-08-23
17:37
fs update file: 766acfc918 check-in: [37484c1daa] user: vincentdarley branch: trunk, size: 258114
2001-07-31
19:12
Changes from TIP#17 "Redo Tcl's filesystem" The following files were impacted. * doc/Access.3: * doc/FileSystem.3: * doc/OpenFileChnl.3: * doc/file.n: * doc/glob.n: * generic/tcl.decls: * generic/tcl.h: * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclDate.c: * generic/tclDecls.h: * generic/tclEncoding.c: * generic/tclFCmd.c: * generic/tclFileName.c: * generic/tclGetDate.y: * generic/tclIO.c: * generic/tclIOCmd.c: * generic/tclIOUtil.c: * generic/tclInt.decls: * generic/tclInt.h: * generic/tclIntDecls.h: * generic/tclLoad.c: * generic/tclStubInit.c: * generic/tclTest.c: * generic/tclUtil.c: * library/init.tcl: * mac/tclMacFCmd.c: * mac/tclMacFile.c: * mac/tclMacInit.c: * mac/tclMacPort.h: * mac/tclMacResource.c: * mac/tclMacTime.c: * tests/cmdAH.test: * tests/event.test: * tests/fCmd.test: * tests/fileName.test: * tests/io.test: * tests/ioCmd.test: * tests/proc-old.test: * tests/registry.test: * tests/unixFCmd.test: * tests/winDde.test: * tests/winFCmd.test: * unix/mkLinks: * unix/tclUnixFCmd.c: * unix/tclUnixFile.c: * unix/tclUnixInit.c: * unix/tclUnixPipe.c: * win/tclWinFCmd.c: * win/tclWinFile.c: * win/tclWinInit.c: * win/tclWinPipe.c file: cbec228ee0 check-in: [9461aca548] user: vincentdarley branch: trunk, size: 257938
2001-07-18
17:17
2001-07-18 Andreas Kupries <[email protected]> * generic/tclIO.c: Aftermath to [SF #427196]. Squash empty buffers if they are smaller than the requested buffersize, to prevent reusage of old buffers and to honor changes in the requested buffersize made by the user. file: af6dc18b5e check-in: [2233dc0144] user: andreas_kupries branch: core-8-3-1-branch, size: 240297
17:13
2001-07-18 Andreas Kupries <[email protected]> * generic/tclIO.c: Aftermath to [SF #427196]. Squash empty buffers if they are smaller than the requested buffersize, to prevent reusage of old buffers and to honor changes in the requested buffersize made by the user. file: 5f00282030 check-in: [f732d07f79] user: andreas_kupries branch: trunk, size: 253829
2001-07-17
20:43
* generic/tclIO.c (GetInput): Fixed [SF #427196]. Memory was overwritten because a buffer was used after a change of the requested buffersize together with that requested buffersize and not its actual size, which was smaller. Note that the continous reuse of the smaller buffer negatively impacts performance. The system never allocates a buffer with the newly requested bigger buffersize. file: 630f0ccf8c check-in: [c1c9df3c6a] user: hobbs branch: core-8-3-1-branch, size: 239612
17:53
2001-07-17 Andreas Kupries <[email protected]> * generic/tclIO.c (GetInput): Fixed [SF #427196]. Memory was overwritten because a buffer was used after a change of the requested buffersize together with that requested buffersize and not its actual size, which was smaller. Note that the continous reuse of the smaller buffer negatively impacts performance. The system never allocates a buffer with the newly requested bigger buffersize. file: 769c7ebf56 check-in: [c3fafed4c2] user: andreas_kupries branch: trunk, size: 253154
2001-05-19
16:59
* Note that "tclbench" (see project "tcllib") was extended with performance benchmarks for [fcopy] too. * doc/fcopy.n: Updated to reflect the extended behaviour of 'fcopy'. * tests/io.test: Added tests 'io-52.9', 'io-52.10' and 'io-52.11' to test the handling of encodings by 'fcopy' / 'TclCopychannel' [Bug #209210]. * generic/tclIO.c: Split of both 'Tcl_ReadChars' and 'Tcl_WriteChars' into a public error checking and an internal working part. The public functions now use the new internal ones. The new functions are 'DoReadChars' and 'DoWriteChars'. Extended 'CopyData' to use the new functions 'DoXChars' when required by the encodings on the input and output channels [Bug #209210]. file: 49b5bc73e2 check-in: [cff0564319] user: andreas_kupries branch: trunk, size: 252546
2001-04-03
22:54
see backport log in ChangeLog for specific file backports from 8.4aCVS file: 24e26109cb check-in: [6defc375da] user: hobbs branch: core-8-3-1-branch, size: 239067
2001-03-30
23:06
2001-03-30 Andreas Kupries <[email protected]> * All of the changes below belong to TIP #10 [Tcl I/O Enhancement: Thread-Aware Channels]. See also [Patch #403358] at SF. * generic/tclIO.h (struct ChannelState, line 236f): Extended the structure with a new field of type 'Tcl_ThreadId' to hold the id of the thread currently managing all channels with this state. Note: This structure is shared by all channels in a stack of transformations. * generic/tclIO.c (Tcl_CreateChannel, lines 1058-1065): Modified to store the Id of the current thread in the 'ChannelState' of the new channel. * generic/tclIO.c (Tcl_SpliceChannel, lines 2265-2270): Modified in the same manner as 'Tcl_CreateChannel' as the channel will be managed by the current thread afterward. * generic/tclIO.c (Tcl_GetChannelThread, lines 1478-1503): * generic/tcl.decls (Tcl_GetChannelThread, lines 1504-1506): New API function to retrieve the Id of the managing thread from a channel. Implementation and declaration. * generic/tclTest.c (TestChannelCmd, lines 4520-4532): Added subcommand 'mthread' to query a channel about its managing thread. file: e9c0f275d3 check-in: [902eab8ec8] user: andreas_kupries branch: trunk, size: 247559
2001-01-30
17:32
2000-01-30 Don Porter <[email protected]> * generic/tclIO.c (CopyData): Moved code that updates the count of how many bytes are left to copy. Corrects bug that when writing occurs in the background, the copy loop could be escaped without updating the count, causing CopyData() to try to copy more bytes than the toRead value originally passed to TclCopyChannel(), leading to hangs and misreporting of number of bytes copied. [Bug 118203, Patch 103432] file: eb6580f553 check-in: [8a04aef41f] user: dgp branch: trunk, size: 246426
2000-10-28
00:29
* generic/tclIO.c (Tcl_NotifyChannel): removed #ifdef around code for old channel structures, placed preserve/release around statePtr file: 1fb0a417a8 check-in: [af6e1bf3b1] user: hobbs branch: trunk, size: 246237
2000-10-27
22:34
* generic/tclIO.c (CloseChannel): the statePtr for a channel was not being freed when the last channel in a stack was freed, causing a mem leak. file: bbf2f52620 check-in: [ff154ed552] user: hobbs branch: trunk, size: 248026
2000-10-06
21:10
* tests/cmdAH.test: extra tests for 'file channels' that include multiple interpreter tests and channel sharing * generic/tclIO.c (Tcl_GetChannelNamesEx): corrected function (and consequently 'file channels') to return channels that are actually registered for this specific interp, rather than this thread. file: 33b6449bb3 check-in: [c07558c028] user: hobbs branch: trunk, size: 247833
2000-09-28
06:38
up-port of the stacked channel implementation rewrite in 8.3.2 to 8.4a2 code base, merged in with some existing new 8.4a2 features. file: f6ede1ae99 check-in: [23d1294c3a] user: hobbs branch: trunk, size: 247169
2000-08-08
00:57
* generic/tclIO.c (Tcl_CreateChannel): added assertion to verify that the new channel versioning will be binary compatible with older channel drivers. file: 6793b9cbe1 check-in: [b27de3ca70] user: hobbs branch: core-8-3-1-branch, size: 241083
2000-07-27
01:39
* merged core-8-3-1-io-rewrite back into core-8-3-1-branch. The core-8-3-1-io-rewrite branch should now be considered defunct. file: a5911a9648 check-in: [4a5dd63d1f] user: hobbs branch: core-8-3-1-branch, size: 240589
00:38
* generic/tclStubInit.c: * generic/tclDecls.h: * generic/tcl.decls: * generic/tcl.h: * generic/tclIO.c: moved the Tcl_Channel* macros from tcl.h to tclIO.c and made them proper stubbed functions. These are: Tcl_ChannelName, Tcl_ChannelVersion, Tcl_ChannelBlockModeProc, Tcl_ChannelCloseProc, Tcl_ChannelClose2Proc, Tcl_ChannelInputProc, Tcl_ChannelOutputProc, Tcl_ChannelSeekProc, Tcl_ChannelSetOptionProc, Tcl_ChannelGetOptionProc, Tcl_ChannelWatchProc, Tcl_ChannelGetHandleProc, Tcl_ChannelFlushProc, and Tcl_ChannelHandlerProc. These should be used to access the Tcl_ChannelType structure instead of direct pointer dereferencing. file: 17c446db52 check-in: [d975fb5646] user: hobbs branch: core-8-3-1-io-rewrite, size: 240593
2000-07-25
16:54
2000-07-25 Andreas Kupries <[email protected]> * tests/iogt.test: (line 866f) New tests iogt-6.[01], highlighting buffering trouble when stacking and unstacking transformations. iogt-6.0 is solved, see the changes below. iogt-6.1 remains, for now, due to the perceived complexity of solutions. * generic/tclIO.h: (line 139f) struct Channel, added a buffer queue, to hold data pushed back when stacking a transformation. * generic/tclIO.c: (line 91f, line 7434f) New internal function 'CopyBuffer'. Derived from 'CopyAndTranslateBuffer', with translation removed. (line 1025f, line 1212f): Initialization of new queue. (line 1164f, Tcl_StackChannel): Pushback of input queue. (line 1293f, Tcl_UnstackChannel): Discard input and pushback. (line 3748f, Tcl_ReadRaw): Modified to use data in the push back area before going to the driver. Uses 'CopyBuffer', s.a. (line 4702f, GetInput): Modified to use data in the push back area before going to the driver. (line 4867f, Tcl_Seek): Modified to take pushback of the topmost channel in a stack into account. (line 5620f, Tcl_InputBuffered): See above. Added 'Tcl_ChannelBuffered'. Analogue to 'Tcl_InputBuffered' but for the buffer area in the channel. * generic/tcl.decls: New public API 'Tcl_ChannelBuffered'. S.a. file: 8e61754ed9 check-in: [10bfc475b0] user: kupries branch: core-8-3-1-io-rewrite, size: 233477
2000-07-17
22:59
* generic/tclStubInit.c: * generic/tclIntDecls.h: * generic/tclInt.decls: commented out internal decls for TclTestChannelCmd and TclTestChannelEventCmd as they were moved to tclTest.c. Added new decls for TclChannelEventScriptInvoker and TclChannelTransform. * generic/tclIO.h: new file that contains the main internal structures of Tcl_Channel code to allow for multiple files to access them. * generic/tclTest.c: * generic/tclIO.c: broke into 3 files - tclIO.c core code, tclIO.h header code, and tclIOGT.c - the giot test code from Kupries. The channel test code also moved to tclTest.c. * generic/tclIO.c (CloseChannel): stopped masking out of the TCL_READABLE|TCL_WRITABLE bits from the state flags in CloseChannel, instead adding extra intelligence to CheckChannelErrors with a new CHANNEL_RAW_MODE bit for special behavior when called from Raw channel APIs. file: cfcbf18df6 check-in: [9a75cd275a] user: hobbs branch: core-8-3-1-io-rewrite, size: 224211
2000-07-14
04:16
* generic/tclIO.c (StackSetBlockMode): moved set of chanPtr outside of blockModeProc check to avoid infinite loop when blockModeProc was NULL (Kupries). updated TransformSeekProc to not call Tcl_Seek directly (Kupries). file: e702e27b79 check-in: [d0ec86cd6c] user: hobbs branch: core-8-3-1-io-rewrite, size: 296088
2000-07-12
01:41
* tests/iogt.test: made tests [345].0 not run by default as they were failing in the new design, but I'm not convinced that the returned result isn't correct. * generic/tclDecls.h: * generic/tclStubInit.c: * generic/tcl.decls: added Tcl_GetTopChannel C API that returns the current top channel of a channel stack. Tcl_GetChannel was changed earlier to return the bottommost channel of a stack because that is the one that is guaranteed to stay around the longest, and this was needed to compensate for certain operations that want to look at the state of the main channel. Most channel APIs already compensate for grabbing the top, so it shouldn't be needed often. * generic/tclIO.c (Tcl_StackChannel, Tcl_UnstackChannel): Added flushing of buffers (Kupries), removed use of DownChannel macro, added Tcl_GetTopChannel public API to get to the top channel of the channel stack (necessary for TLS). Rewrote Tcl_NotifyChannel for new channel design (Kupries). Did some code cleanup in the transform code. tclIO.c must still be broken into bits (separate out test code and giot code, create tclIO.h). file: b7b7ac2a1c check-in: [2f00b8921d] user: hobbs branch: core-8-3-1-io-rewrite, size: 295933
2000-07-10
17:35
2000-07-10 Andreas Kupries <[email protected]> * tests/iogt.test: Reverted some earlier changes as a fix by Jeff revived the original and correct behaviour. IOW, the tests showed a genuine error and I didn't see it :(. * generic/tclIO.c (Tcl_Read|Write_Raw): Changed to directly use the drivers and not DoRead|DoWrite. The latter use the buffering system, encoding and eol-translation and this wreaks havoc with the data going through the transformations. Both procedures use CheckForchannelErrors and let it believe that there is no background copy in progress or else stacked channels could not be used for that. * generic/tclIO.c (TclCopyChannel, CopyData): Moved access to the topmost channel from the first to the second procedure to make the decision about that at the last possible time (Callbacks can change the stacking). test suite: failures of iogt-[345].0 file: d41387d774 check-in: [ddc1b09ee7] user: kupries branch: core-8-3-1-io-rewrite, size: 290142
2000-07-07
03:31
* tests/iogt.test: new tests for stacked channel stuff based off new 'testchannel transform|unstack' code (Kupries IOGT extension). * generic/tcl.decls: * generic/tcl.h: * generic/tclDecls.h: * generic/tclStubsInit.c: * generic/tclIO.c (TclCopyChannel): complete rewrite of Tcl Channel code for stacked channels. HOBBS: ADD MORE WHEN DONE. file: b16a7a96ab check-in: [b684e61b81] user: hobbs branch: core-8-3-1-io-rewrite, size: 288116
2000-06-02
20:04
* generic/tclIO.c (CloseChannel): removed the &ing out of (TCL_READABLE|TCL_WRITABLE) from the flags, as CloseChannel does this on the next pass through for the top channel, and it appeared to be causing hangs by not allowing the final flush. file: a3f2e6fe79 check-in: [7659a94a04] user: hobbs branch: core-8-3-1-branch, size: 255269
05:20
(CloseChannel): further extended CloseChannel in the stacked case to effect certain operations on the next channel that would have been done in Tcl_Close. Also added CHANNEL_CLOSED and removed (TCL_READABLE|TCL_WRITABLE) bits from chanPtr->flags. Changed final reset of the WatchProc to check the chanDownPtr's (next) interestMask. file: aa23ba73f5 check-in: [0224a167ee] user: hobbs branch: core-8-3-1-branch, size: 255321
03:01
* generic/tclIO.c (CloseChannel): Rewrote CloseChannel code to unstack a channel during the close process. Fixed a refcount bug in Tcl_UnstackChannel. [Bug: 5623] file: e756d5c729 check-in: [f7571ce9e0] user: hobbs branch: core-8-3-1-branch, size: 254013
2000-05-19
21:30
* generic/tclTest.c: * generic/tclIO.c: moved channel test commands from tclIO.c to tclTest.c. * generic/tclIO.h: new file, split out from tclIO.c to allow test commands to be moved to tclTest.c. * generic/tclStubInit.c: * generic/tclIntDecls.h: * generic/tclInt.decls: removed TclTestChannel*Cmd from internal stubs table and added TclChannelEventScriptInvoker to the internal stubs table so it can be used from the test code. file: 5567e758c3 check-in: [a0e9b1640e] user: hobbs branch: trunk, size: 222177
2000-05-08
22:14
lint chan = NULL init file: 21bdbb24cb check-in: [8f82990764] user: hobbs branch: trunk, size: 260711
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: c2429d1373 check-in: [cdf262856d] user: kupries branch: trunk, size: 260707
2000-04-05
19:00
2000-04-05 Andreas Kupries <[email protected]> * generic/tclIO.c (Tcl_UnstackChannel, line 1831): Forcing interest mask to the correct value after an unstack and re-initialization of the notifier via the watchProc. Without this the first fileevent after an unstack will come through and be processed, but no more. [Bug: ??]. file: 62ca10258b check-in: [52b3ac564c] user: kupries branch: trunk, size: 253549
1999-12-21
23:58
* generic/tclCmdIL.c: added -unique option to lsort * generic/tclThreadTest.c: changed thread ids to longs [Bug: 3902] file: b406d65614 check-in: [473262218e] user: hobbs branch: trunk, size: 253508
1999-12-08
03:49
* generic/tclDate.c: * unix/Makefile.in: fixed make gendate to swap const with CONST so it uses the Tcl defined CONST type [Bug: 3521] * generic/tclIO.c: removed panic that could occur in FlushChannel when a "blocking" channel would receive EAGAIN, instead treating it the same as non-blocking. [Bug: 3773] * generic/tclUtil.c: fixed Tcl_ScanCountedElement to not step beyond the end of the counted string [Bug: 3336] file: 54e7cba72f check-in: [b39a92cac1] user: hobbs branch: trunk, size: 253488
1999-12-01
02:45
* generic/tclIO.c: fix from Kupries for Tcl_UnstackChannel that correctly handles resetting translation and encoding. file: 2c76ca33ba check-in: [83cb927173] user: hobbs branch: trunk, size: 253456
1999-09-22
04:12
1999-09-21 Jeff Hobbs <[email protected]> * tests/env.test: * unix/Makefile.in: added support for AIX LIBPATH env var [Bug: 2793] removed second definition of INCLUDE_INSTALL_DIR (the one that referenced @includedir@) [Bug: 2805] * unix/dltest/Makefile.in: added -lc to LIBS [Bug: 2794] * tests/timer.test: changed after delay in timer test 6.29 from 1 to 10. [Bug: 2796] * tests/pkg.test: * generic/tclPkg.c: fixed package version check to disallow 1.2..3 [Bug: 2539] * unix/Makefile.in: fixed gendate target - this never worked since RCS was intro'd. * generic/tclGetDate.y: updated to reflect previous changes to tclDate.c (leap year calc) and added CEST and UCT time zone recognition. Fixed 4 missing UCHAR() casts. [Bug: 2717, 954, 1245, 1249] * generic/tclCkalloc.c: changed Tcl_DumpActiveMemory to really dump to stderr and close it [Bug: 725] and changed Tcl_Ckrealloc and Tcl_Ckfree to not bomb when NULL was passed in [Bug: 1719] and changed Tcl_Alloc, et al to not panic when a alloc request for zero came through and NULL was returned (valid on AIX, Tru64) [Bug: 2795, etc] * generic/tclIOCmd.c: fixed potential core dump in conjunction with stacked channels with result obj manipulation in Tcl_ReadChars [Bug: 2623] * tests/format.test: * generic/tclCmdAH.c: fixed translation of %0#s in format [Bug: 2605] * tests/set-old.test: * generic/tclVar.c: Added fix in TclArraySet to check when trying to set in a non-existent namespace. [Bug: 2613] * tests/linsert.test: * generic/tclCmdIL.c: fixed end-int interpretation of linsert to correctly calculate value for end, added test and docs [Bug: 2693] * doc/switch.n: added proper use of comments to example. * generic/tclCmdMZ.c: changed switch to complain when an error occurs that seems to be due to a misplaced comment. * generic/tclCmdMZ.c: fixed illegal ref for \[0-9] substitutions in regsub [Bug: 2723] * generic/tclCmdMZ.c: changed [string equal] to return an Int type object (was a Boolean) * generic/tclParseExpr.c: changed '"' to '\"' to make FreeBSD happy [Bug: 2625] * generic/tclProc.c: moved static buf to better location and changed static msg that would overflow in ProcessProcResultCode [Bug: 2483] and added Tcl_DStringFree to Tcl_ProcObjCmd. Also reworked size of static buffers. * tests/stringObj.test: added test 9.11 * generic/tclStringObj.c: changed Tcl_AppendObjToObj to properly handle the 1-byte dest and mixed src case where both had had Unicode string len checks made on them. [Bug: 2678] * unix/aclocal.m4: * unix/tcl.m4: added -bnoentry to the AIX-* case [Bug: 1909] added fix for FreeBSD-[1-2] recognition [Bug: 2070] and fix for IRIX SHLIB_LB_LIBS. [Bug: 2610] * generic/tclPosixStr.c: fixed typo [Bug: 2592] * win/README.binary: fixed version info and some typos [Bug: 2561] * generic/tclIO.c: changed Tcl_GetChannelNames* to use style guide headers (pleases HP cc) * tests/expr.test: * generic/tclCompile.c: add TCL_TOKEN_VARIABLE to the part types that cause differed compilation for exprs, to correct the expr double-evaluation problem for vars. Added test cases. Related to [Bug: 732] file: 1df674e663 check-in: [ab656050a9] user: hobbs branch: core-8-2-1-branch, size: 251052
1999-08-19
17:39
1999-08-19 Jeff Hobbs <[email protected]> * generic/tclIO.c: changed Tcl_GetChannelNames* to use K&R style headers (style guide, also pleases HP cc) file: 0731f3777c check-in: [769c31641d] user: hobbs branch: trunk, size: 251894
02:59
1999-08-18 Jeff Hobbs <[email protected]> * doc/OpenFileChnl.3: * doc/file.n: * tests/cmdAH.test: * tclIO.c: * tclCmdAH.c: added "file channels ?pattern?" tcl command, with associated Tcl_GetChannelNames and Tcl_GetChannelNamesEx public C APIs (added to tcl.decls as well), with docs and tests. * generic/tclCompile.c: add TCL_TOKEN_VARIABLE to the part types that cause differed compilation for exprs, to correct the expr double-evaluation problem for vars. Added test cases. file: 40eb3913fd check-in: [fb64d24b32] user: hobbs branch: trunk, size: 251758
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: 635caa9c22 check-in: [cfb9ace67b] user: redman branch: trunk, size: 251003
02:42
1 Added use of Tcl_GetAllocMutex to tclAlloc.c and tclCkalloc.c so they can be linked against alternate thread packages. 2 Added Tcl_GetChannelNames to tclIO.c 3 Added TclVarTraceExists hook so "info exists" triggers read traces exactly like it did in Tcl 7.6 4 Stubs table changes to reflect new internal and external APIs file: 45a2ed5410 check-in: [0a115beef8] user: welch branch: trunk, size: 251888
1999-07-30
21:46
updated trf patch to fix problems created when adapting Kupries' previous patch to our specs. file: 4f28674c59 check-in: [af62bca303] user: hobbs branch: trunk, size: 250022
1999-07-22
21:50
* Changed version to 8.2b2. * win/tclWinPort.h: Block out include of sys/*.h in order to build extensions with MetroWerks compiler for Win32. [Bug: 2385] * generic/tclCmdMZ.c: * generic/tclIO.c: Fix ANSI-style prototypes based on patch from Ulrich Ring. [Bug: 2391] * unix/Makefile.in: Need to make install-sh executable before calling (with chmod +x). [Bug: 2413] * tests/var.test: * generic/tclVar.c: Fixed bug that caused a seg. fault when using "array set a(b) {}", which is a bad array name anyway. Now the "array set" command will return an error in this case. Added test case and fixed existing test. [Bug: 2427] file: 58f93fe5dd check-in: [589cb7ba77] user: redman branch: trunk, size: 249313
1999-07-02
19:51
Name change from Tcl_ReplaceChannel to Tcl_StackChannel Added new code that modifies the channel in place. file: 233f0d8fec check-in: [559c4a45d9] user: welch branch: trunk, size: 249302
1999-06-30
17:47
Initial version of the Tcl_ReplaceChannel and Tcl_UndoReplaceChannel functions. file: 7e8d360a2c check-in: [3050cfce85] user: welch branch: trunk, size: 240281
1999-05-18
20:17
added -encoding to the list of legal options used in the error message when a bad option is used. Because the fconfigure command is configurable (so more option can be added), the error string is hardcoded. file: baec5d6315 check-in: [22239ff421] user: hershey branch: trunk, size: 230673
1999-04-21
21:50
Resynced with mainline. file: 05211a8f91 check-in: [45b9dd789f] user: rjohnson branch: trunk, size: 230665
01:47
Merged with mainline. file: 3fa1eea2ad check-in: [81c2b84aff] user: rjohnson branch: scriptics-tclpro-1-2, size: 230669
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-19
21:01
Added: Added comment about not check for EINTR [Bug 1631]. file: 00b905b0d9 check-in: [1432d68679] user: redman branch: scriptics-tclpro-1-2, size: 230868
1999-04-16
00:46
merged tcl 8.1 branch back into the main trunk file: aad6c7a6d5 check-in: [f3b32fb71c] user: stanton branch: trunk, size: 230664
1999-04-14
00:33
Fixed comments in code that referred to APIs that no longer exist, were misspelled, or have been updated. file: 88d52f2208 check-in: [2d7ffe4998] user: surles branch: core-8-1-branch-old, size: 230667
1999-03-11
19:28
Deleted: Add documentation for Tcl_GetVersion() check-in: [940e47cf48] user: redman branch: scriptics-tclpro-1-2, size: 0
1999-02-19
02:17
Deleted: Created branch scriptics-tclpro-1-2-synthetic check-in: [1d719b3ad1] user: cvs2fossil branch: scriptics-tclpro-1-2-synthetic, size: 0
1999-02-01
21:29
* generic/tclBasic.c: * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclExecute.c: * generic/tclHistory.c: * generic/tclIO.c: * generic/tclIOUtil.c: * generic/tclInterp.c: * generic/tclMain.c: * generic/tclNamesp.c: * generic/tclParse.c: * generic/tclProc.c: * generic/tclTest.c: * generic/tclTimer.c: * generic/tcl.h: Made eval interfaces compatible with 8.0 by renaming Tcl_EvalObj to Tcl_EvalObjEx, renaming Tcl_Eval2 to Tcl_EvalEx and restoring Tcl_EvalObj and Tcl_GlobalEvalObj interfaces so they match Tcl 8.0. file: 236b4d79ed check-in: [4e3632a716] user: stanton branch: core-8-1-branch-old, size: 230660
1998-12-03
04:57
* generic/tclIO.c (WriteBytes, WriteChars): Fixed so extraneous flushes do not happen in line mode. (TranslateOutputEOL): Made translation more efficient in line mode and fixed a buffer overflow bug in CRLF translation. [Bug: 887] file: 37967fa494 check-in: [54523ce067] user: stanton branch: core-8-1-branch-old, size: 230656
1998-12-02
03:13
Cleaned up some tests Fixed an I/O bug where UpdateInterest was not always called on input file: 1158de636b check-in: [7d0d5b2428] user: stanton branch: core-8-1-branch-old, size: 230706
1998-11-11
04:08
merged 8.0.4 into 8.1 file: 7b7df27967 check-in: [fe115bdad2] user: stanton branch: core-8-1-branch-old, size: 230521
1998-10-30
00:38
Fixed the Tcl_NotifyChannel bug, plus added a test case for it. Simply replaced Tcl_RegisterChannel/UnregisterChannel with Tcl_Preserve/Tcl_Release was all it took. Chanels are already "eventually freed" file: 87b3d1b063 check-in: [b31fdd817b] user: welch branch: trunk, size: 188993
1998-09-24
23:58
merging changes from 8.0.3 into 8.1a2 file: 59516a34d2 check-in: [1c3c1ab19f] user: stanton branch: core-8-1-branch-old, size: 230917
1998-09-21
23:39
Added contents of Tcl 8.1a2 file: 29ff757407 check-in: [8c56dc8868] user: stanton branch: core-8-1-branch-old, size: 230325
1998-09-14
18:39
Replaced SCCS strings, fixed binary files file: f8b3f2e772 check-in: [196f92fd17] user: stanton branch: trunk, size: 189403
1998-06-27
18:09
plugin updates file: 50fcc04b72 check-in: [594ce53543] user: welch branch: trunk, size: 189402
1998-06-09
13:08
fixed bug that caused file events to not be reported on buffered data file: 82cc31ce86 check-in: [0ceb0a9460] user: stanton branch: trunk, size: 188907
1998-03-26
14:45
Added: Initial revision file: 633a408011 check-in: [cacdd0f329] user: rjohnson branch: trunk, size: 188269