diff options
author | dkf <donal.k.fellows@manchester.ac.uk> | 2012-08-04 07:52:39 (GMT) |
---|---|---|
committer | dkf <donal.k.fellows@manchester.ac.uk> | 2012-08-04 07:52:39 (GMT) |
commit | 4aff1e5a4ca6dc45fa445b23777e3d8dd728c82c (patch) | |
tree | f191ab6d4e59ba4240dd4544b19de87c4da601dd /library/init.tcl | |
parent | 945186c2fac7c4c3ba9275d1c6cbb45b8e10a954 (diff) | |
parent | 24ef33dc101a3e9114318b884c1e99d792f4739d (diff) | |
download | tcl-dkf_utf16_branch.zip tcl-dkf_utf16_branch.tar.gz tcl-dkf_utf16_branch.tar.bz2 |
merge trunkdkf_utf16_branch
Diffstat (limited to 'library/init.tcl')
-rw-r--r-- | library/init.tcl | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/library/init.tcl b/library/init.tcl index 685fc7b..51c7f29 100644 --- a/library/init.tcl +++ b/library/init.tcl @@ -651,7 +651,7 @@ proc auto_execok name { set execExtensions [list {} .com .exe .bat .cmd] } - if {$name in $shellBuiltins} { + if {[string tolower $name] in $shellBuiltins} { # When this is command.com for some reason on Win2K, Tcl won't # exec it unless the case is right, which this corrects. COMSPEC # may not point to a real file, so do the check. @@ -689,13 +689,14 @@ proc auto_execok name { } } - foreach dir [split $path {;}] { - # Skip already checked directories - if {[info exists checked($dir)] || ($dir eq "")} { - continue - } - set checked($dir) {} - foreach ext $execExtensions { + foreach ext $execExtensions { + unset -nocomplain checked + foreach dir [split $path {;}] { + # Skip already checked directories + if {[info exists checked($dir)] || ($dir eq "")} { + continue + } + set checked($dir) {} set file [file join $dir ${name}${ext}] if {[file exists $file] && ![file isdirectory $file]} { return [set auto_execs($name) [list $file]] |