summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoroehhar <harald.oehlmann@elmicron.de>2022-09-09 13:41:50 (GMT)
committeroehhar <harald.oehlmann@elmicron.de>2022-09-09 13:41:50 (GMT)
commitfc474844a77a1f8a4fbde6335d9fe57e0166f7a3 (patch)
treea6f1ac70bcade1f145dc8506310b6ad1073e0e08
parenta81159df88c89e6950dff666b7e507a0285c616a (diff)
parent8d3f011861dcd391662c06432e4cda4b88bb7696 (diff)
downloadtcl-fc474844a77a1f8a4fbde6335d9fe57e0166f7a3.zip
tcl-fc474844a77a1f8a4fbde6335d9fe57e0166f7a3.tar.gz
tcl-fc474844a77a1f8a4fbde6335d9fe57e0166f7a3.tar.bz2
Merge 8.6
-rw-r--r--doc/after.n4
-rw-r--r--tests/io.test33
2 files changed, 37 insertions, 0 deletions
diff --git a/doc/after.n b/doc/after.n
index 3d0d2c4..1a814e0 100644
--- a/doc/after.n
+++ b/doc/after.n
@@ -33,6 +33,7 @@ depending on the first argument to the command:
\fBafter \fIms\fR
.
\fIMs\fR must be an integer giving a time in milliseconds.
+A negative number is treated as 0.
The command sleeps for \fIms\fR milliseconds and then returns.
While the command is sleeping the application does not respond to
events.
@@ -52,6 +53,9 @@ the background error will be reported by the command
registered with \fBinterp bgerror\fR.
The \fBafter\fR command returns an identifier that can be used
to cancel the delayed command using \fBafter cancel\fR.
+A \fIms\fR value of 0 (or negative) queues the event immediately with
+priority over other event types (if not installed withn an event proc,
+which will wait for next round of events).
.TP
\fBafter cancel \fIid\fR
.
diff --git a/tests/io.test b/tests/io.test
index 6314ace..b6c4fb5 100644
--- a/tests/io.test
+++ b/tests/io.test
@@ -8952,6 +8952,39 @@ test io-74.1 {[104f2885bb] improper cache validity check} -setup {
removeFile io-74.1
} -returnCodes error -match glob -result {can not find channel named "*"}
+# Note: the following tests are in preparation for TCL 9.0, where those should
+# result in an error result
+test io-75.1 {multibyte encoding error read results in raw bytes} -setup {
+ set fn [makeFile {} io-75.1]
+ set f [open $fn w+]
+ fconfigure $f -encoding binary
+ puts -nonewline $f "A\xC0\x40"
+ flush $f
+ seek $f 0
+ fconfigure $f -encoding utf-8 -buffering none
+} -body {
+ read $f
+} -cleanup {
+ close $f
+ removeFile io-75.1
+} -returnCodes ok -result "A\xC0\x40"
+# for TCL 9.0, the result is error
+
+test io-75.2 {unrepresentable character write passes and is replaced by ?} -setup {
+ set fn [makeFile {} io-75.2]
+ set f [open $fn w+]
+ fconfigure $f -encoding iso8859-1
+} -body {
+ # the following command gets in result error in TCL 9.0
+ puts -nonewline $f "A\u2022"
+ flush $f
+ seek $f 0
+ read $f
+} -cleanup {
+ close $f
+ removeFile io-75.2
+} -returnCodes ok -result "A?"
+
# ### ### ### ######### ######### #########
# cleanup