| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
clarification of #endifs, reduction of unnecessary casts, use of array syntax
for reading array elements, etc.)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
owner == handler.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
interfered with conditional cleanup tasks testing for "the right interp"
Added a new field "dead" to perform the dead channel signalling task so
the corrupted logic is avoided.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
rest of Tcl source code. No ABI change. API change *should* be harmless.
|
|
|
| |
the Engineering Manual.
|
| |
|
|\
| |
| | |
cause more harm than good. Purged them (except in zlib files).
|
| |
| |
| | |
more harm than good. Purged them.
|
| |
| |
| |
| | |
* tests/ioCmd.test: in InvokeTclMethod and callers.
|
| |
| |
| |
| |
| |
| |
| |
| | |
ReflectSeekWide, ReflectWatch, ReflectBlock, ReflectSetOption,
ReflectGetOption, ForwardProc): [Bug 2978773]: Preserve
ReflectedChannel* structures across handler invokations, to avoid
crashes when the handler implementation induces nested callbacks
and destruction of the channel deep inside such a nesting.
|
| |
| |
| |
| |
| |
| | |
* doc/refchan.n: <ferrieux@users.sourceforge.net> for debugging and fixing
* tests/ioCmd.test: the problem. It is the write-side equivalent
to the bug fixed 2009-08-06.
|
| |
| |
| |
| |
| |
| | |
constant 11 with the proper errno define, EAGAIN. What was I
thinking ? The BSD's have a different errno assignment and break
with the hardwired number. Reported by emiliano on the chat.
|
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclIORChan.c: reflective channels (TIP 219, method
* tests/ioCmd.test: 'read'), enabling handlers to signal EAGAIN to
indicate 'no data, but not at EOF either', and other system
errors. Updated documentation, extended testsuite (New test cases
iocmd*-23.{9,10}).
|
| |
| |
| |
| |
| |
| | |
Closing a channel may supply NULL for the 'interp'. Test for
finalization needs to be different, and one place has to pull the
interp out of the channel instead.
|
| |
| |
| |
| |
| | |
reported in [Bug 1987821]. Thanks to Miguel for the rpeort and
Don Porter for tracking the cause down.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
implementation. Added test cases about how it handles if the rug
is pulled out from under a channel (= killing threads,
interpreters containing the tcl command for a channel, and channel
sitting in a different interpreter/thread.)
* generic/tclIORChan.c: Fixed the bugs exposed by the new
testcases, redone most of the cleanup and exit handling.
|
| |
| |
| |
| |
| |
| |
| |
| | |
write when input was zero-length anyway. Otherwise keept it an
error, and separate the message from 'written too much'.
* tests/ioCmd.test (iocmd-24.6): Testcase updated for changed
message.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
the now closed channel from the reflection map. Before we could
crash the system by invoking 'chan postevent' on a closed
reflected channel, dereferencing the dangling pointer in the
map.
* tests/ioCmd.test (iocmd-31.8): Testcase for the above.
|
| |
| |
| |
| |
| | |
* generic/tclIORTrans.c: in InvokeTclMethod and callers.
* tests/ioTrans.test:
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
included, don't include <limits.h>
again. Follow-up to [Bug 2991415]:
tclport.h #included before limits.h
See comments in [Bug 2991415]
|
| |
| |
| |
| |
| |
| |
| |
| | |
ReflectSeekWide, ReflectWatch, ReflectBlock, ReflectSetOption,
ReflectGetOption, ForwardProc): [Bug 2978773]: Preserve
ReflectedChannel* structures across handler invokations, to avoid
crashes when the handler implementation induces nested callbacks
and destruction of the channel deep inside such a nesting.
|
| |
| |
| |
| |
| |
| | |
* doc/refchan.n: <ferrieux@users.sourceforge.net> for debugging and fixing
* tests/ioCmd.test: the problem. It is the write-side equivalent
to the bug fixed 2009-08-06.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* win/tclWinReg.c PDWORD_PTR
* win/tclWinThrd.c: Fix various minor gcc warnings.
* win/tclWinTime.c
* win/tclWinConsole.c Put channel type definitions
* win/tclWinChan.c in static const memory
* win/tclWinPipe.c
* win/tclWinSerial.c
* win/tclWinSock.c
* generic/tclIOGT.c
* generic/tclIORChan.c
* generic/tclIORTrans.c
* unix/tclUnixChan.c
* unix/tclUnixPipe.c
* unix/tclUnixSock.c
* unix/configure (regenerated with autoconf 2.59)
* tests/info.test: Make test independant from
tcltest implementation.
|
| |
| |
| |
| | |
TCL_VOLATILE.
|
| |
| |
| |
| |
| |
| | |
minor *** POTENTIAL INCOMPATIBILITY *** because
Tcl_CreateChannel() and its derivatives, now
sometimes ignore their "chanName" argument.
|
| |
| |
| |
| |
| |
| | |
constant 11 with the proper errno define, EAGAIN. What was I
thinking ? The BSD's have a different errno assignment and break
with the hardwired number. Reported by emiliano on the chat.
|
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclIORChan.c: reflective channels (TIP 219, method
* tests/ioCmd.test: 'read'), enabling handlers to signal EAGAIN to
indicate 'no data, but not at EOF either', and other system
errors. Updated documentation, extended testsuite (New test cases
iocmd*-23.{9,10}).
|
| |
| |
| |
| |
| | |
- some internal const decorations
- spacing
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
* generic/tclIORTrans.c (ReflectClose): Closing a channel may
supply NULL for the 'interp'. Test for finalization needs to be
different, and one place has to pull the interp out of the channel
instead.
|
| |
| |
| |
| | |
etc.)
|
| |
| |
| |
| |
| | |
const tables. No functional
or API change.
|
| |
| |
| |
| |
| | |
reported in [Bug 1987821]. Thanks to Miguel for the rpeort and
Don Porter for tracking the cause down.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
implementation. Added test cases about how it handles if the rug
is pulled out from under a channel (= killing threads,
interpreters containing the tcl command for a channel, and channel
sitting in a different interpreter/thread.)
* generic/tclIORChan.c: Fixed the bugs exposed by the new
testcases, redone most of the cleanup and exit handling.
|
| |
| |
| |
| |
| |
| |
| |
| | |
write when input was zero-length anyway. Otherwise keept it an
error, and separate the message from 'written too much'.
* tests/ioCmd.test (iocmd-24.6): Testcase updated for changed
message.
|