| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
etc.)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* 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].
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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 ***
|
| |
|
|
|
|
|
| |
Ferrieux's first patch for [Bug 2270477] with a gentler version,
also supplied by him.
|
|
|
|
|
| |
examples how it should have been done.
purpose: contribute in the TIP #340 discussion.
|
|
|
|
|
| |
Ferrieux's patch for [Bug 2270477] to prevent infinite looping
during finalization of channels not bound to interpreters.
|
| |
|
|
|
|
| |
eliminate an 'array index out of bounds' warning on HP-UX'
|
| |
|
|
|
|
|
| |
const tables. No functional
or API change.
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Alexandre Ferrieux <ferrieux@users.sourceforge.net> 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 <ferrieux@users.sourceforge.net>
* tests/chanio.test: to fix the [Bug 1969953]. Buffersize outside
of the supported range are now clipped to nearest boundary instead
of ignored.
|
|
|
|
|
|
|
| |
* io.test (io-53.8a): Ferrieux <ferrieux@users.sourceforge.net>,
* 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.
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
| |
TclCopyChannel): New macro, and the places using it. This change
allows for bi-directional fcopy on channels. Thanks to Alexandre
Ferrieux <ferrieux@users.sourceforge.net> for the patch.
|
|
|
|
|
|
| |
* tests/io.test: prevent fcopy from calling -command synchronously
* tests/chanio.test: the first time. Thanks to Alexandre Ferrieux
<ferrieux@users.sourceforge.net> for report and patch.
|
|
|
|
|
|
|
| |
[Bug 780533], with many thanks to Alexandre Ferrieux
<ferrieux@users.sourceforge.net> for tracking it down and
providing a solution. Still have to convert his test script into
a proper test case.
|
|
|
|
| |
[Bug 1869405] (Ficicchia)
|
| |
|
| |
|
|
|
|
|
| |
* generic/tclIO.c (SetChannelFromAny): internal rep only after
validating channel rep. [Bug 1847044]
|
|
|
|
|
|
|
| |
* 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]
|
|
|
|
| |
message in latest changes.
|
| |
|
|
|
|
|
|
|
| |
* 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]
|
| |
|
|
|
|
| |
objTypes.
|
| |
|
| |
|
|
|
|
| |
for [gets].
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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:
|
|
|
|
| |
* unix/tclUnixChan.c:
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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]
|
|
|
|
|
|
| |
mismanagement of newlevel, newcode. Changed to allocate the
Tcl_Obj's as late as possible, and only when actually needed. [Bug
1705778, leak K29].
|
|
|
|
| |
catenation, and fixed an oversight in the fix for NZA time zones.
|
|
|
|
| |
macro.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Avoid checking for for the LF in a possible CRLF
sequence when EOF has already been found.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
| |
|
|
|
|
| |
possible NULL derefs, [Bug 1566382] and coverity #33.
|