diff options
| author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2024-02-06 14:16:57 (GMT) |
|---|---|---|
| committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2024-02-06 14:16:57 (GMT) |
| commit | 3bca85b23b94d896c7b0f59544aac9dce3d3feca (patch) | |
| tree | d7d37d6e1cfd0d0a58996ee2399418c3d76a73cd | |
| parent | e079e789cbd90c7a5f8f1fee702d0632cd53674d (diff) | |
| download | tcl-3bca85b23b94d896c7b0f59544aac9dce3d3feca.zip tcl-3bca85b23b94d896c7b0f59544aac9dce3d3feca.tar.gz tcl-3bca85b23b94d896c7b0f59544aac9dce3d3feca.tar.bz2 | |
Proposed fix for [86b3c15f0c]: ::unknown has infinite recursion in a corner case
| -rw-r--r-- | library/init.tcl | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/library/init.tcl b/library/init.tcl index 9412e00..188cb3d 100644 --- a/library/init.tcl +++ b/library/init.tcl @@ -371,7 +371,10 @@ proc unknown args { return -options $::tcl::UnknownOptions $::tcl::UnknownResult } - set ret [catch {set candidates [info commands $name*]} msg] + set ret [catch [list uplevel 1 [list info commands $name*]] msg] + if {$ret == 0} { + set candidates $msg + } if {$name eq "::"} { set name "" } |
