summaryrefslogtreecommitdiffstats
path: root/tests/ioCmd.test
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2014-05-09 13:33:27 (GMT)
committerdgp <dgp@users.sourceforge.net>2014-05-09 13:33:27 (GMT)
commitf4401162e8a02620777c1992ff99e96407944e04 (patch)
treee100a9dd09c5eefd4e813b1d2574ed68490f5f7d /tests/ioCmd.test
parente5380959631d8d4bf037d7f5494c619c5815edd1 (diff)
parenta84b51c1b4d6b6279e7ee1dbb533cc9b9dab6085 (diff)
downloadtcl-f4401162e8a02620777c1992ff99e96407944e04.zip
tcl-f4401162e8a02620777c1992ff99e96407944e04.tar.gz
tcl-f4401162e8a02620777c1992ff99e96407944e04.tar.bz2
Test iocmd-32.1 is not "impossible" but after writing it properly it does segfault trying to use a deleted interp. Fixed.
Diffstat (limited to 'tests/ioCmd.test')
-rw-r--r--tests/ioCmd.test9
1 files changed, 4 insertions, 5 deletions
diff --git a/tests/ioCmd.test b/tests/ioCmd.test
index ebc9cc7..ff93719 100644
--- a/tests/ioCmd.test
+++ b/tests/ioCmd.test
@@ -2076,13 +2076,13 @@ test iocmd-32.1 {origin interpreter of moved channel destroyed during access} -m
proc foo {args} {
oninit; onfinal; track;
# destroy interpreter during channel access
- # Actually not possible for an interp to destroy itself.
- interp delete {}
- return}
+ suicide
+ }
set chan [chan create {r w} foo]
fconfigure $chan -buffering none
set chan
}]
+ interp alias $ida suicide {} interp delete $ida
# Move channel to 2nd thread.
interp eval $ida [list testchannel cut $chan]
@@ -2100,8 +2100,7 @@ test iocmd-32.1 {origin interpreter of moved channel destroyed during access} -m
set res
}]
set res
-} -constraints {testchannel impossible} \
- -result {Owner lost}
+} -constraints {testchannel} -result {Owner lost}
test iocmd-32.2 {delete interp of reflected chan} {
# Bug 3034840