Posted to tcl by evilotto at Fri Nov 30 23:22:10 GMT 2012view raw
- proc autoclose_open {f} {
- set fd [open $f]
- catch {uplevel tailcall close $fd}
- return $fd
- }
- proc whatever {a} {
- set data [read [autoclose_open $a]]
- puts "currently open: [chan names]"
- }
- whatever /etc/passwd
- puts "now open: [chan names]"