summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2014-07-08 14:23:20 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2014-07-08 14:23:20 (GMT)
commit5a7df0cabf3670fae0c85b2cf48b5455b6aaa054 (patch)
tree7b1122e56f5d58b5600575deaf03e93bc142f553
parent9fe6fac391db5ccd06a12f7e9b2c77de54a1b364 (diff)
parentd0565eba5df7fbf569a9fab0415bb0391dedbf29 (diff)
downloadtk-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.tcl16
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]
}
}