From 41e8f7c84390f1ed0ef602aba40544b6b2f383da Mon Sep 17 00:00:00 2001 From: oehhar Date: Thu, 18 Aug 2022 12:03:23 +0000 Subject: Ticket [a11678b759]: improve after documentation for time <= 0. --- doc/after.n | 4 ++++ 1 file changed, 4 insertions(+) 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 . -- cgit v0.12 From b83ee238f996e0d84b24b61566fedf5fb91919d9 Mon Sep 17 00:00:00 2001 From: oehhar Date: Fri, 9 Sep 2022 13:34:30 +0000 Subject: Ticket [6978c01b65]: add file encoding tests, which should fail in 9.0, but are ok in 8.6 and 8.7: write unrepresentable character and read invalid multi-byte character --- tests/io.test | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/tests/io.test b/tests/io.test index 3b374c1..7c12b7b 100644 --- a/tests/io.test +++ b/tests/io.test @@ -8805,6 +8805,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 -- cgit v0.12