summaryrefslogtreecommitdiffstats
path: root/generic/tclIO.c
Commit message (Collapse)AuthorAgeFilesLines
* Add some comments about possible other self-restacking troubles.dgp2014-05-021-1/+8
|
* Fully restore topChan resetting to accommodate self-restacking channels.dgp2014-05-021-17/+26
|
* Re-enable buffer recycling.dgp2014-05-021-1/+1
|
* Stop the segfault in iogt-2.4. First by changing the UpdateInterest()dgp2014-05-011-1/+8
| | | | | | | 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.
* merge trunkdgp2014-05-011-8/+27
|\
| * Merge in the fixes for improper ChannelBuffer sharing via recycling.dgp2014-05-011-8/+27
| |\
| | * Stop the segfaults in [close] during [gets] tests.dgp2014-04-301-9/+14
| | | | | | | | | Not sure this is the right behavior, but it's better than crashing.
| | * Panic message to pinpoint the cause of iocmd-21.23 segfault.dgp2014-04-301-0/+3
| | |
| | * Make sure no shared ChannelBuffers get recycled.dgp2014-04-291-0/+11
| | |
* | | merge trunkdgp2014-04-291-2/+4
|\ \ \ | |/ /
| * | Fix bug exposed when buffer recycling is disabled.dgp2014-04-291-2/+4
| |\ \ | | |/
| | * Fix bug exposed when buffer recycling is disabled.dgp2014-04-291-2/+4
| | |\
| | | * Revise the logic for setting TCL_ENCODING_END in the outputEncodingFlagsdgp_no_buffer_recycledgp2014-04-291-2/+4
| | | | | | | | | | | | so it does not rely on buffer recycling.
| | | * Disable buffer recycling to expose bugs for fixing.dgp2014-04-251-1/+1
| | |/
* | | Disable buffer recycling, which creates mysteries.dgp2014-04-251-1/+1
| | |
* | | Test iortrans-4.8.2 demos an infinite loop. Possible trouble withdgp2014-04-251-0/+5
|/ / | | | | pushback buffers.
* | Merge refcounting machinery for ChannelBuffer.dgp2014-04-211-8/+42
|\ \ | |/
| * Added a refcounting mechanism to ChannelBuffers. Other edits todgp2014-04-211-8/+42
| | | | | | stop segfaults in tests iocmd-21.2[12].
* | Fix for Bug [97069ea11a]: Set return message in close if a flush error is ↵oehhar2014-04-041-1/+11
|\ \ | |/ | | | | reported (which may be an error from a background flush)
| * Fix test failure socket-2.9: "1 {not owner}" instead of "1 {couldn't open ↵oehhar2014-04-011-9/+8
| | | | | | | | socket address already in use}" by only setting returned error message if not jet set.
| * Set return message in close if a flush error is reported (which may be an ↵oehhar2014-04-011-2/+13
| | | | | | | | error from a background flush). Ticket [97069ea11a]
* | Merge minimal fix for iocmd-23.11.dgp2014-03-281-10/+28
|\ \ | |/ | | | | | | 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.
| * Minimal patch to fix iocmd-23.11. Might not be the best fix, but is *a* fix.dgp2014-03-271-3/+20
| |
* | Simplify the core output operations of channels. Reduce duplicative and dead ↵dgp2014-02-041-590/+63
|\ \ | |/ | | | | code.
| * Simplify macro typecasting.dgp2014-01-311-6/+3
| |
| * The "channel" Tcl_ObjType is caching only. It never needs an UpdateString ↵dgp2014-01-311-46/+6
| | | | | | | | | | routine. It's also static to the tclIO.c file.
| * Do not call updateStringProc directly. We have TclGetString() for that.dgp2014-01-311-10/+1
| |
| * Refactor to eliminate the DoWriteChars() layer.dgp2014-01-301-64/+22
| |
| * Eliminate DoWrite(). It duplicates WriteBytes().dgp2014-01-301-163/+2
| |
| * Trial: Implement DoWrite() as WriteBytes().dgp2014-01-301-0/+4
| |
| * Simplification and cleanup enabled by last commit.dgp2014-01-301-301/+7
| |
| * Refactor WriteChars() and WriteBytes() into simple wrappers of a commondgp2014-01-301-13/+35
| | | | | | routine Write().
* | Eliminate the use of a staging buffer in WriteChars().dgp2014-01-301-185/+115
|\ \ | |/
| * The outputStage field is now unused, so never allocate it.dgp2014-01-281-29/+0
| |
| * tidy things updgp2014-01-281-194/+17
| |
| * Working code with no staging buffer use.dgp2014-01-281-31/+97
| |
| * WIPdgp2014-01-281-0/+69
| |
* | In WriteChars(), eliminate the copy step through a staging buffer when itdgp2014-01-241-10/+12
|\ \ | |/ | | is not required for channel translation.
| * Eliminate the copy to a staging buffer when that serves no functional purpose.dgp2014-01-241-10/+12
| |
| * Fix C99 comment-ism breaking the native AIX compiler. HPUX likely as well.andreask2013-05-291-2/+2
| |
| * Backport 8.6's fix [checkin 5af0d249de] to [Bug 2901998]: Inconsistent ↵ferrieux2013-05-011-8/+92
| | | | | | | | buffered I/O. Tcl's I/O now flushes buffered output before reading, discards buffered input before writing, etc.
* | Remove from tclIO.h structs used only in tclIO.c.dgp2013-02-261-0/+102
|\ \ | |/
| * structs *ChannelHandler* GetsState CopyState used only locally.dgp2013-02-261-0/+102
| |\ | | | | | | Remove from tclIO.h.
| | * structs ChannelHandler ChannelHandlerEvent GetsState CopyState used locally.dgp2013-02-261-0/+78
| | | | | | | | | Remove from tclIO.h.
| | * struct NextChannelHandler used only locally. Remove from tclIO.h.dgp2013-02-261-0/+24
| | |
* | | Repair linked list management in Tcl_DeleteCloseHandler().dgp2013-02-251-0/+14
|\ \ \ | |/ / | | | CloseCallback struct used only locally. Remove from tclIO.h.
| * | Repair linked list management in Tcl_DeleteCloseHandler().dgp2013-02-251-0/+14
| |\ \ | | |/ | | | CloseCallback struct used only locally. Remove from tclIO.h.
| | * Repair linked list management in Tcl_DeleteCloseHandler(). dgp2013-02-251-0/+14
| | | | | | | | | CloseCallback struct is used only locally. Remove from tclIO.h.
* | | merge core-8-5-branchjan.nijtmans2013-01-311-2/+2
|\ \ \ | |/ /
| * | Use twoPtrValue.ptr1 in stead of otherValuePtr everywhere. This is exactly ↵jan.nijtmans2013-01-311-2/+2
| | | | | | | | | | | | the same field, but it allows twoPtrValue.ptr2 to be used for other purposes.