diff options
author | dgp <dgp@users.sourceforge.net> | 2014-07-02 16:20:30 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2014-07-02 16:20:30 (GMT) |
commit | c3898a2da7b81e2c38a0b66ef3fe54ae0272d2f5 (patch) | |
tree | d0c8941599686cd2f946a53d19d3df8910fed610 /tests | |
parent | e7158f66d79b491e7b6f871259b591bd1aebe67d (diff) | |
download | tcl-c3898a2da7b81e2c38a0b66ef3fe54ae0272d2f5.zip tcl-c3898a2da7b81e2c38a0b66ef3fe54ae0272d2f5.tar.gz tcl-c3898a2da7b81e2c38a0b66ef3fe54ae0272d2f5.tar.bz2 |
[c31ca233ca] Fix TclGetsObjBinary() so that each [gets] rediscovers whether
a nonblocking channel is blocked.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/io.test | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/io.test b/tests/io.test index a1625ba..c1938a1 100644 --- a/tests/io.test +++ b/tests/io.test @@ -4921,6 +4921,26 @@ test io-36.1 {Tcl_InputBlocked on nonblocking pipe} {stdio openpipe} { close $f1 set x } {{} 1 hello 0 {} 1} +test io-36.1.1 {Tcl_InputBlocked on nonblocking binary pipe} {stdio openpipe} { + set f1 [open "|[list [interpreter]]" r+] + chan configure $f1 -encoding binary -translation lf -eofchar {} + puts $f1 {puts hello_from_pipe} + flush $f1 + gets $f1 + fconfigure $f1 -blocking off -buffering full + puts $f1 {puts hello} + set x "" + lappend x [gets $f1] + lappend x [fblocked $f1] + flush $f1 + after 200 + lappend x [gets $f1] + lappend x [fblocked $f1] + lappend x [gets $f1] + lappend x [fblocked $f1] + close $f1 + set x +} {{} 1 hello 0 {} 1} test io-36.2 {Tcl_InputBlocked on blocking pipe} {stdio openpipe} { set f1 [open "|[list [interpreter]]" r+] fconfigure $f1 -buffering line |