summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2025-06-04 10:21:51 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2025-06-04 10:21:51 (GMT)
commitb4f22927e555a8c0dc21b835dba42e3e6193156b (patch)
tree59fe44e400e15b3860051dd52901f78d936a63fe
parent1978e5ad548683dcd5211df12203e5a4701c018d (diff)
downloadtcl-b4f22927e555a8c0dc21b835dba42e3e6193156b.zip
tcl-b4f22927e555a8c0dc21b835dba42e3e6193156b.tar.gz
tcl-b4f22927e555a8c0dc21b835dba42e3e6193156b.tar.bz2
fix leak in lseq.test
-rw-r--r--library/init.tcl6
-rw-r--r--tests/encoding.test8
-rw-r--r--tests/lseq.test1
-rw-r--r--tests/tcltests.tcl36
-rw-r--r--tests/utfext.test54
5 files changed, 53 insertions, 52 deletions
diff --git a/library/init.tcl b/library/init.tcl
index d691baf..5876a29 100644
--- a/library/init.tcl
+++ b/library/init.tcl
@@ -591,9 +591,9 @@ proc auto_execok name {
set auto_execs($name) ""
set shellBuiltins [list assoc call cd cls color copy date del dir echo \
- erase exit ftype for if md mkdir mklink move path \
- pause prompt rd ren rename rmdir set start time \
- title type ver vol]
+ erase exit ftype for if md mkdir mklink move path \
+ pause prompt rd ren rename rmdir set start time \
+ title type ver vol]
if {[info exists env(PATHEXT)]} {
# Add an initial ; to have the {} extension check first.
set execExtensions [split ";$env(PATHEXT)" ";"]
diff --git a/tests/encoding.test b/tests/encoding.test
index dfc8dfb..9712073 100644
--- a/tests/encoding.test
+++ b/tests/encoding.test
@@ -1170,10 +1170,10 @@ test encoding-31.1 {encoding system does not change encoding user} -setup {
test encoding-31.2 {encoding system on newer Windows always returns utf-8} -body {
string equal [encoding system] \
- [expr {
- [tcltests::windowsbuildnumber] > 18362 ?
- "utf-8" : [tcltests::windowscodepage]
- }]
+ [expr {
+ [tcltests::windowsbuildnumber] > 18362 ?
+ "utf-8" : [tcltests::windowscodepage]
+ }]
} -constraints win -result 1
test encoding-bug-6a3e2cb0f0-1 {Bug [6a3e2cb0f0] - invalid bytes in escape encodings} -body {
diff --git a/tests/lseq.test b/tests/lseq.test
index 24ccfc8..c3adeb7 100644
--- a/tests/lseq.test
+++ b/tests/lseq.test
@@ -26,6 +26,7 @@ proc memusage {} {
if {[llength $line] != 7} {
error "Unexpected /proc/pid/statm format"
}
+ close $fd
return [lindex $line 5]
}
testConstraint hasMemUsage [expr {![catch {memusage}]}]
diff --git a/tests/tcltests.tcl b/tests/tcltests.tcl
index 73080f0..ccb77c3 100644
--- a/tests/tcltests.tcl
+++ b/tests/tcltests.tcl
@@ -117,24 +117,24 @@ namespace eval ::tcltests {
{*}$args
}
- # Return Windows version as FULLVERSION MAJOR MINOR BUILD REVISION
- if {$::tcl_platform(platform) eq "windows"} {
- proc windowsversion {} {
- set ver [regexp -inline {(\d+).(\d+).(\d+).(\d+)} [exec {*}[auto_execok ver]]]
- proc windowsversion {} [list return $ver]
- return [windowsversion]
- }
- proc windowsbuildnumber {} {
- return [lindex [windowsversion] 3]
- }
- proc windowscodepage {} {
- # Note we cannot use result of chcp because that returns OEM code page.
- package require registry
- set cp [registry get HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Nls\\CodePage ACP]
- proc windowscodepage {} "return cp$cp"
- return [windowscodepage]
- }
- }
+ # Return Windows version as FULLVERSION MAJOR MINOR BUILD REVISION
+ if {$::tcl_platform(platform) eq "windows"} {
+ proc windowsversion {} {
+ set ver [regexp -inline {(\d+).(\d+).(\d+).(\d+)} [exec {*}[auto_execok ver]]]
+ proc windowsversion {} [list return $ver]
+ return [windowsversion]
+ }
+ proc windowsbuildnumber {} {
+ return [lindex [windowsversion] 3]
+ }
+ proc windowscodepage {} {
+ # Note we cannot use result of chcp because that returns OEM code page.
+ package require registry
+ set cp [registry get HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Nls\\CodePage ACP]
+ proc windowscodepage {} "return cp$cp"
+ return [windowscodepage]
+ }
+ }
}
init
diff --git a/tests/utfext.test b/tests/utfext.test
index bfbb2db..20ca2c4 100644
--- a/tests/utfext.test
+++ b/tests/utfext.test
@@ -196,15 +196,15 @@ namespace eval utftest {
[expr {$frag1Written+$frag2Written}] $decoded
} -result [list $status1 1 ok [string length $in] [string length $out] $out]
- if {$direction eq "toutf"} {
- # Fragmentation but with no more data.
- # Only check status. Content output is already checked in above test.
- test $cmd-$enc-$id-1 "$cmd - $enc - $hexin - frag=$fragindex - no more data" -constraints testencoding -body {
- set frag1Result [testencoding $cmd $enc [string range $in 0 $fragindex-1] {start end} 0 $dstlen frag1Read frag1Written]
- lassign $frag1Result frag1Status frag1State frag1Decoded
- set frag1Status
- } -result syntax
- }
+ if {$direction eq "toutf"} {
+ # Fragmentation but with no more data.
+ # Only check status. Content output is already checked in above test.
+ test $cmd-$enc-$id-1 "$cmd - $enc - $hexin - frag=$fragindex - no more data" -constraints testencoding -body {
+ set frag1Result [testencoding $cmd $enc [string range $in 0 $fragindex-1] {start end} 0 $dstlen frag1Read frag1Written]
+ lassign $frag1Result frag1Status frag1State frag1Decoded
+ set frag1Status
+ } -result syntax
+ }
}
proc testcharlimit {direction enc comment hexin hexout} {
@@ -332,45 +332,45 @@ namespace eval utftest {
} -result [list [list multibyte 0 \xEF\xBC\x90\xEF\xBC\x91\x00\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF] 4 6 2 [list ok 0 \xC2\x82\x00\xFF\xFF\xFF\xFF\xFF\xFF\xFF] 1 2 1] -constraints testencoding
test Tcl_ExternalToUtf-bug-7346adc50f-strict-0 {
- truncated input in escape encoding (strict)
+ truncated input in escape encoding (strict)
} -body {
- set src [binary decode hex 1b2442242a3b6e24]
- list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start end strict} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
+ set src [binary decode hex 1b2442242a3b6e24]
+ list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start end strict} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
} -result [list syntax 2 [binary decode hex e3818ae8a9a600ffffffffffffffffff] 7 6 2]
test Tcl_ExternalToUtf-bug-7346adc50f-strict-1 {
- truncated input in escape encoding (strict, partial)
+ truncated input in escape encoding (strict, partial)
} -body {
- set src [binary decode hex 1b2442242a3b6e24]
- list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start strict} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
+ set src [binary decode hex 1b2442242a3b6e24]
+ list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start strict} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
} -result [list multibyte 2 [binary decode hex e3818ae8a9a600ffffffffffffffffff] 7 6 2]
test Tcl_ExternalToUtf-bug-7346adc50f-replace-0 {
- truncated input in escape encoding (replace)
+ truncated input in escape encoding (replace)
} -body {
- set src [binary decode hex 1b2442242a3b6e24]
- list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start end replace} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
+ set src [binary decode hex 1b2442242a3b6e24]
+ list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start end replace} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
} -result [list ok 2 [binary decode hex e3818ae8a9a6efbfbd00ffffffffffff] 8 9 3]
test Tcl_ExternalToUtf-bug-7346adc50f-replace-1 {
- truncated input in escape encoding (replace, partial)
+ truncated input in escape encoding (replace, partial)
} -body {
- set src [binary decode hex 1b2442242a3b6e24]
- list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start replace} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
+ set src [binary decode hex 1b2442242a3b6e24]
+ list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start replace} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
} -result [list multibyte 2 [binary decode hex e3818ae8a9a600ffffffffffffffffff] 7 6 2]
test Tcl_ExternalToUtf-bug-7346adc50f-tcl8-0 {
- truncated input in escape encoding (tcl8)
+ truncated input in escape encoding (tcl8)
} -body {
- set src [binary decode hex 1b2442242a3b6e24]
- list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start end tcl8} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
+ set src [binary decode hex 1b2442242a3b6e24]
+ list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start end tcl8} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
} -result [list ok 2 [binary decode hex e3818ae8a9a6efbfbd00ffffffffffff] 8 9 3]
test Tcl_ExternalToUtf-bug-7346adc50f-tcl8-1 {
- truncated input in escape encoding (tcl8, partial)
+ truncated input in escape encoding (tcl8, partial)
} -body {
- set src [binary decode hex 1b2442242a3b6e24]
- list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start tcl8} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
+ set src [binary decode hex 1b2442242a3b6e24]
+ list {*}[testencoding Tcl_ExternalToUtf iso2022-jp $src {start tcl8} 0 16 srcRead dstWritten charsWritten] $srcRead $dstWritten $charsWritten
} -result [list multibyte 2 [binary decode hex e3818ae8a9a600ffffffffffffffffff] 7 6 2]
}