diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2014-07-08 14:23:20 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2014-07-08 14:23:20 (GMT) |
commit | 5a7df0cabf3670fae0c85b2cf48b5455b6aaa054 (patch) | |
tree | 7b1122e56f5d58b5600575deaf03e93bc142f553 | |
parent | 9fe6fac391db5ccd06a12f7e9b2c77de54a1b364 (diff) | |
parent | d0565eba5df7fbf569a9fab0415bb0391dedbf29 (diff) | |
download | tk-5a7df0cabf3670fae0c85b2cf48b5455b6aaa054.zip tk-5a7df0cabf3670fae0c85b2cf48b5455b6aaa054.tar.gz tk-5a7df0cabf3670fae0c85b2cf48b5455b6aaa054.tar.bz2 |
Workaround for [http://core.tcl.tk/tcl/tktview?name=4955f5d8a4dce006e063f924bc9709f7850ecb6a|4955f5d8a4]: tailcall splicing spot vs. raw TclInvokeObjectCommand.
This commit can be reverted as soon as a solution for [http://core.tcl.tk/tcl/tktview?name=4955f5d8a4dce006e063f924bc9709f7850ecb6a|4955f5d8a4] is committed to Tcl trunk, but I don't want to hold my breath until that is done, neither do I want to leave the Ocaml guys in the cold ...
-rw-r--r-- | library/tk.tcl | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/library/tk.tcl b/library/tk.tcl index c490797..0110fe3 100644 --- a/library/tk.tcl +++ b/library/tk.tcl @@ -24,7 +24,7 @@ namespace eval ::tk { # The msgcat package is not available. Supply our own # minimal replacement. proc mc {src args} { - tailcall format $src {*}$args + return [format $src {*}$args] } proc mcmax {args} { set max 0 @@ -334,35 +334,35 @@ proc ::tk::EventMotifBindings {n1 dummy dummy} { if {![llength [info commands tk_chooseColor]]} { proc ::tk_chooseColor {args} { - tailcall ::tk::dialog::color:: {*}$args + return [::tk::dialog::color:: {*}$args] } } if {![llength [info commands tk_getOpenFile]]} { proc ::tk_getOpenFile {args} { if {$::tk_strictMotif} { - tailcall ::tk::MotifFDialog open {*}$args + return [::tk::MotifFDialog open {*}$args] } else { - tailcall ::tk::dialog::file:: open {*}$args + return [::tk::dialog::file:: open {*}$args] } } } if {![llength [info commands tk_getSaveFile]]} { proc ::tk_getSaveFile {args} { if {$::tk_strictMotif} { - tailcall ::tk::MotifFDialog save {*}$args + return [::tk::MotifFDialog save {*}$args] } else { - tailcall ::tk::dialog::file:: save {*}$args + return [::tk::dialog::file:: save {*}$args] } } } if {![llength [info commands tk_messageBox]]} { proc ::tk_messageBox {args} { - tailcall ::tk::MessageBox {*}$args + return [::tk::MessageBox {*}$args] } } if {![llength [info command tk_chooseDirectory]]} { proc ::tk_chooseDirectory {args} { - tailcall ::tk::dialog::file::chooseDir:: {*}$args + return [::tk::dialog::file::chooseDir:: {*}$args] } } |