git-gui: Paper bag fix missing translated strings
The Tcl expression "[append [mc Foo] Bar]" does not return the string
"FooBar" after translation; instead it is setting the variable Foo to
the value Bar, or if Foo is already defined it is appending Bar onto
the end of it. This is *not* what we wanted to have happen here.
Tcl's join function is actually the correct function but its default
joinStr argument is a single space. Unfortunately all of our call
sites do not want an extra space added to their string. So we need
a small wrapper function to make the call to join with an empty
join string. In C this is (roughly) the job of the strcat function.
Since strcat is not yet used at the global level it is a reasonable
name to use here.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
diff --git a/lib/branch_rename.tcl b/lib/branch_rename.tcl
index d6f040e..1665388 100644
--- a/lib/branch_rename.tcl
+++ b/lib/branch_rename.tcl
@@ -114,7 +114,7 @@
-type ok \
-title [wm title $w] \
-parent $w \
- -message [append [mc "Failed to rename '%s'." $oldname] "\n\n$err"]
+ -message [strcat [mc "Failed to rename '%s'." $oldname] "\n\n$err"]
return
}