diff options
| author | dgp@users.sourceforge.net <dgp> | 2014-03-27 19:14:01 (GMT) |
|---|---|---|
| committer | dgp@users.sourceforge.net <dgp> | 2014-03-27 19:14:01 (GMT) |
| commit | ff3184c1f670f97a8fcdf062d9d7fa516a4dbc29 (patch) | |
| tree | 6232cd636dc535c6aee83de5b03bf83bec370cc7 | |
| parent | 2fd85acf731b6b2f3d830003c279580aa73a4703 (diff) | |
| download | tcl-ff3184c1f670f97a8fcdf062d9d7fa516a4dbc29.zip tcl-ff3184c1f670f97a8fcdf062d9d7fa516a4dbc29.tar.gz tcl-ff3184c1f670f97a8fcdf062d9d7fa516a4dbc29.tar.bz2 | |
Test iocmd-23.11 demos another segfault.
| -rw-r--r-- | tests/ioCmd.test | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/ioCmd.test b/tests/ioCmd.test index 768a748..262be9b 100644 --- a/tests/ioCmd.test +++ b/tests/ioCmd.test @@ -1013,6 +1013,21 @@ test iocmd-23.10 {chan read, EAGAIN means no data, yet no eof either} -match glo rename foo {} unset res } -result {{read rc* 4096} {} 0} +test iocmd-23.11 {chan read, close pulls the rug out} -match glob -body { + set res {} + proc foo {args} { + oninit; onfinal; track + set args [lassign $args sub id] + if {$sub ne "read"} {return} + close $id + return {} + } + set c [chan create {r} foo] + note [read $c] + close $c + rename foo {} + set res +} -result {{read rc* 4096} {read rc* 4096} snarfsnarf} # --- === *** ########################### # method write |
