summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [3479689] Plug memory leak due to incomplete bug fix.dgp2014-07-111-12/+6
|
* makeFile / removeFile balance.dgp2014-07-101-1/+3
|
* makeFile / removeFile balancedgp2014-07-101-0/+8
|
* dup test namedgp2014-07-101-1/+1
|\
| * dup test namedgp2014-07-101-1/+1
| |
* | [f652ae79ed] Close sockets used in tests, so as not to corrupt otherdgp2014-07-101-0/+1
| | | | | | tests in the suite.
* | [7368d225a6] Extend the auto-cleanup of zero ref count values passed in todgp2014-07-101-0/+3
|\ \ | |/ | | | | | | the Tcl_*SetVar*() family of routines to cover the missing case where the flags value of TCL_APPEND_VALUE is passed in alone. *** POTENTIAL INCOMAPTIBILITY***
| * [7368d225a6] Extend the auto-cleanup of zero ref count values passed indgp2014-07-101-0/+3
| | | | | | | | | | to the Tcl_*SetVar*() family of routines to cover the missing case where the flags value of TCL_APPEND_VALUE is passed in alone. *** POTENTIAL INCOMAPTIBILITY***
* | Repair buffer indexing error in Tcl_ReadRaw().dgp2014-07-101-1/+1
|\ \ | |/
| * Repair buffer indexing error in Tcl_ReadRaw() exposed by iogt-6.0 and valgrind.dgp2014-07-101-1/+1
| |
* | Don't use Tcl_GetCommandInfo when Tcl_FindCommand suffices.jan.nijtmans2014-07-091-3/+2
| |
* | The write and flush operations of reflected transforms ([chan push]) havedgp2014-07-081-2/+2
| | | | | | | | | | | | | | been converting all lower level channel errors from Tcl_WriteRaw() into EINVAL. Generally this is a perplexing discard of useful information, but worse it interferes with the EAGAIN signalling that is required to manage the BLOCKED state of a nonblocking channel. Thanks to aspect for demo scripts that pointed to the bug.
* | Update Unicode tables to Unicode 7.0jan.nijtmans2014-07-042-1063/+1194
|\ \ | |/
| * Update Unicode tables to Unicode 7.0jan.nijtmans2014-07-042-1063/+1194
| |
* | Clarify http::config and http::geturl -headers roles in setting request headers.dgp2014-07-021-1/+2
| |
* | [c31ca233ca] Fix TclGetsObjBinary() so that each [gets] rediscovers whetherdgp2014-07-022-5/+24
|\ \ | |/ | | a nonblocking channel is blocked.
| * [c31ca233ca] Fix TclGetsObjBinary() so that each [gets] rediscovers whetherdgp2014-07-022-5/+24
| | | | | | a nonblocking channel is blocked.
* | Fix mismatch of Tcl_Preserve() / Tcl_Release().dgp2014-06-261-2/+1
|\ \ | |/
| * Fix mismatch of Tcl_Preserve() / Tcl_Release().dgp2014-06-261-2/+1
| |
* | Simplify / refactor Tcl_ReadRaw(). No need for CopyBuffer().dgp2014-06-241-127/+50
|\ \ | |/
| * Simplify / refactor Tcl_ReadRaw(). No need for CopyBuffer().dgp2014-06-241-127/+50
| |
* | Fix execute-6.5 test failure on trunk: the "preserveCore" part of ↵jan.nijtmans2014-06-231-33/+33
|\ \ | |/ | | | | tcltest::test assumes that the cleanup is done first, so moving the cleanup means the the "preserverCore" part needs to move with it.
| * Fix execute-6.5 test failure on trunk: the "preserveCore" part of ↵jan.nijtmans2014-06-231-33/+33
| | | | | | | | tcltest::test assumes that the cleanup is done first, so moving the cleanup means the the "preserverCore" part needs to move with it.
* | ticket [2f9df4c4fa]: tcltest - request to move -cleanup script execution ↵jan.nijtmans2014-06-224-14/+14
|\ \ | |/ | | | | | | until after -output compare. tcltest -> version 2.3.8
| * ticket [2f9df4c4fa]: tcltest - request to move -cleanup script execution ↵jan.nijtmans2014-06-224-14/+14
| |\ | | | | | | | | | | | | until after -output compare tcltest -> version 2.3.8
| | * previous commit was not quite right, this one should be betterbug_2f9df4c4fajan.nijtmans2014-06-201-14/+14
| | |
| | * ticket [2f9df4c4fa]: tcltest - request to move -cleanup script execution ↵jan.nijtmans2014-06-204-12/+12
| |/ | | | | | | until after -output compare
* | [b47b176adf] Stop possible segfaults when variability in mutex lockaku2014-06-201-0/+16
|\ \ | |/ | | | | | | schedules cause a ForwardingResult to remain on the forwardList after it has been processed (IORChan is the origin of the code in IORTrans).
| * [b47b176adf] Stop possible segfaults when variability in mutex lockaku2014-06-201-0/+16
| | | | | | | | | | schedules cause a ForwardingResult to remain on the forwardList after it has been processed (IORChan is the origin of the code in IORTrans).
* | [b47b176adf] Stop segfault when variability in mutex lock schedules cause dgp2014-06-191-0/+6
| | | | | | | | a ForwardingResult to remain on the forwardList after it has been processed.
* | [f0f876c141] Improve consistency in error messages.dkf2014-06-1714-56/+58
| |
* | [1758a0b603] socket_*-2.13 : Workaround the broken select() in some Linuxdgp2014-06-161-2/+56
|\ \ | |/ | | | | kernels that fails to report a writable state on a socket when an error condition (or remote close) is present.
| * [1758a0b603] socket-2.13 : Workaround the broken select() in some Linuxdgp2014-06-161-3/+58
| |\ | | | | | | | | | kernels that fails to report a writable state on a socket when an error condition (or remote close) is present.
| | * merge 8.5bug_1758a0b603dgp2014-06-161-0/+41
| | |\ | | |/ | |/|
| | * Additional check for an error condition on the socket.dgp2014-06-121-1/+7
| | |
| | * Workaround the broken select() in some Linux kernels that fails to reportdgp2014-06-111-3/+52
| | | | | | | | | | | | | | | a writable state on a socket when an error condition (or remote close) is present. Would be good to add actual test suite tests for this, but until then see demo scripts in the ticket 1758a0b603.
* | | merge socket test from 8.5dgp2014-06-161-0/+42
|\ \ \ | |/ /
| * | Draft test for [1758a0b603].dgp2014-06-131-0/+41
| |/
* | [311e61d12a] Generate error code in *all* places where commands are looked up.dkf2014-06-161-1/+2
| |
* | [cb042d294e] Improve consistency of [dict] wrong-args error messages.dkf2014-06-153-41/+41
| |
* | [1b0266d8bb] Make [dict replace] and [dict remove] have canonicalization ↵dkf2014-06-154-161/+287
|\ \ | | | | | | | | | semantics close to [lrange] and [lreplace]. [dict merge] is also improved, but is not as strict.
| * | Some more cleaning upbug_1b0266d8bbdkf2014-06-151-36/+44
| | |
| * | Make [dict replace] and [dict remove] guarantee result canonicality.dkf2014-06-152-95/+84
| | |
| * | Improved the error messages. dkf2014-06-074-39/+104
| | | | | | | | | | | | We do not want parsing an invalid dictionary to give errors about lists! As compensation, we get greater precision in the errorcode.
| * | merge trunkdkf2014-06-063-5/+83
| |\ \ | |/ / |/| |
* | | Tests socket*-2.12 test for DiscardOutput() updates.dgp2014-06-051-1/+39
|\ \ \ | | |/ | |/|
| * | Test socket-2.12 covers the DiscardOutput() update.dgp2014-06-051-1/+39
| | |
* | | When too many chars are read by ReadChars() and we trim the limits to get it ↵dgp2014-06-052-4/+44
|\ \ \ | |/ / | | | | | | 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.
| * | merge forkdgp2014-06-050-0/+0
| |\ \
| | * | Fixed a tricky interaction of IO system and encodings which couldandreask2014-06-051-2/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.